Back up, retain, and prove what happened to your data
DataFrugal is a cloud backup and data governance platform. It keeps your backups and records immutable — safe from deletion, tampering, and ransomware — and keeps an audit trail of who accessed them — so when a customer, auditor, or security review asks for proof, you have it.
This documentation covers setting up your organisation,
working with data in the web app, retention and WORM
protection, audit logging, security controls, and
automating everything through the REST API and the
df-agent command-line tool.
What is DataFrugal?
DataFrugal sits between your applications and cloud object storage. You send it the data you need to keep — database dumps, VM and system backups, log archives, compliance records, contracts, long-term archives — and it stores that data on secure, DataFrugal-managed storage with retention, access control, and auditing applied for you.
You work with DataFrugal through a web app, a REST API,
or the df-agent CLI. All three follow the
same rules: the same roles, the same retention, the same
audit trail. Your teams never handle raw storage
credentials or cloud SDKs.
Why Teams Use DataFrugal
Most teams can already store data. What they struggle with is proving what happened to it — the day a customer, auditor, or incident asks.
Use Cases
Who uses DataFrugal, and for what. Each case links to the part of these docs that covers it.
SaaS & tech companies
Enterprise customers want proof of who can access their data before they sign.
A complete download audit and a read-only Auditor role answer security questionnaires, while the API backs up your databases automatically.
Evidence for auditsIT & DevOps backups
Ransomware now goes after backups first.
df-agent pushes nightly database dumps and system backups into WORM-locked storage that a compromised account can't delete.
DataFrugal for IT teamsFinance, accounting & CA firms
Invoices, ledgers, and tax filings must be kept unchanged for years.
Retention locks each record until its keep-until date, and auditors can review everything without being able to change it.
DataFrugal for CA & CS firmsLegal teams & law firms
Contracts and case files must be provably original, and must not spread.
Originals stay locked, only the owner can share, recipients can't pass files on, and every download is on record.
DataFrugal for law firmsHealthcare & clinics
Patient records and scans must be retained, and access must be traceable.
Retention keeps records for their full period and the audit trail shows who downloaded them. Name files by patient ID, not name — file names are visible to anyone you share with.
Audit trailPharma & life sciences
SOPs, audit reports, and vendor files pile up around regulated work and still need to be kept and tracked.
Not a GxP system of record — a locked, traceable backup for the documents around it, kept for as long as your policy needs.
DataFrugal for pharmaLog & evidence archives
Logs only help an investigation if nobody could have altered them.
Ship application and security logs into WORM storage so they are intact, and provably so, when an incident needs them.
WORM storageEngineering & media
Drawings, models, and video are huge and go through many revisions.
Files up to 5 TB are supported, and every earlier version is kept and restorable.
Uploading filesHR & people records
Employee records are kept for years and should be seen by very few.
Retention keeps them for as long as required, access stays with the owner and the people they choose, and downloads are audited.
Roles & permissionsGetting Started
Everything in DataFrugal belongs to an organisation. You create one (or join your company's existing one), pick a plan and storage region, and then start protecting data from the web app, the API, or df-agent.
Set Up Your Organisation
- Sign in. Use email and password (with email verification), or continue with Google or Microsoft.
- Create or join an organisation. If your company already uses DataFrugal, request to join — an administrator approves the request. Otherwise, create a new organisation.
- Choose a plan and region. The plan decides your storage provider (AWS or Wasabi). Pick the region your data should live in, for example Mumbai, Singapore, or Virginia.
- Set up your organisation. Add its name, contact details, and your default retention period. Administrators can also set an IP allowlist here.
- Complete payment. A one-time setup fee activates your organisation's storage.
- Invite your team. Add users and assign roles. For automation, create a Service Identity.
- Start protecting data from the dashboard, the REST API, or df-agent.
Business and individual accounts
Sign up with a work email and you get a business organisation with its own dedicated storage, your choice of region, retention settings, and IP allowlisting. Sign up with a personal email and you get an individual workspace on DataFrugal's shared, Wasabi-hosted storage, with a simpler setup. See the Storage Model for how the two differ.
Illustrated Walkthrough
A screen-by-screen look at onboarding, for a business (private workspace) account and an individual (shared workspace) account. Both paths follow the same sequence of screens — the individual path simply shows fewer fields, since your storage provider and region are already decided for you. This is preview data, not your account.
Sign in or create your account
Every DataFrugal account starts here — email and password with verification, or continue with Google or Microsoft.
New here? Your email address requires verification before your first sign-in.
Welcome — see what's available to you
A welcome screen introduces what you can do, and previews the two storage providers — your business workspace will choose between them in a later step.
Welcome to DataFrugal
Choose to create or join an organisation
If your company already has a workspace, request to join it — an administrator approves the request. Otherwise, create a new one.
Choose your plan and storage region
Pick a subscription plan and the region your data will live in. The plan determines your datastore (AWS or Wasabi); the region is fixed once set.
Set up your organisation
Name your organisation, review your retention defaults, and add contact details. Administrators can also configure an IP allowlist here.
Organisation Details
Contact Information
Complete payment
A one-time setup fee activates your organisation's dedicated workspace.
Payment Summary
You're all set
DataFrugal finishes provisioning your organisation's storage and takes you straight to your dashboard.
You're all set! Taking you to your DataFrugal dashboard…
Sign in or create your account
Every DataFrugal account starts here — email and password with verification, or continue with Google or Microsoft.
New here? Your email address requires verification before your first sign-in.
Welcome — your storage provider is already chosen
The same welcome screen shows for everyone — but for a personal email address, Wasabi is marked as "Your storage provider" since that's where individual accounts are automatically hosted.
Welcome to DataFrugal
Choose to create or join an organisation
This step still appears for a personal email address — DataFrugal's guidance updates to reflect that you're getting your own personal workspace.
You're using a personal email address, so we'll get you set up with your own personal workspace.
Choose your plan
Pick a subscription plan. There's no region selector — your storage is already fixed to DataFrugal's shared Wasabi-hosted workspace.
Set up your workspace
Individual accounts see a much lighter version of this form — just contact details. There's no organisation name, region, retention, or IP allowlist to configure.
Setup organisation
Set up your organisation's storage, contacts, and access preferences.Complete payment
Individual accounts still complete the same payment step as business accounts, sized to the plan chosen.
Payment Summary
You're all set
DataFrugal takes you straight to your dashboard, inside your personal, Wasabi-hosted workspace.
You're all set! Taking you to your DataFrugal dashboard…
Preview only — illustrative screens, not actual screenshots. DataFrugal's sign-in is handled by a secure identity provider; the sign-in screen shown here reflects the sign-in options and email verification requirement, not exact pixels.
Working with DataFrugal
Your Workspace
The web app has three main views. Use the interactive preview below to click through them.
- Dashboard — your own files and folders. Upload by drag and drop, create folders, and rename, move, share, download, or delete items. Search and filter by name, type, labels, or date.
- Restore — items you have deleted. Each shows how many days remain before it is removed for good. Restore it, download it, or check its details in the meantime.
Tour the Workspace
A sample look at the workspace. Click between tabs, open the breadcrumb, and try the label icon on a row — this is preview data, not your account.
| Name | Type | Last Modified | Shared | Size | Actions |
|---|---|---|---|---|---|
Finance Reports |
Folder | Sep 18, 2026 | — |
Resource Labels
FinanceRetained
|
|
Q3-Revenue-Summary.pdf |
Sep 17, 2026 | 2.4 MB |
Resource Labels
No labels yet
|
||
customer_master.csv |
CSV | Sep 15, 2026 | 860 KB |
Resource Labels
PIIRetained
|
|
backup-policy.docx |
Word | Sep 5, 2026 | 128 KB |
Resource Labels
No labels yet
|
| Name | Type | Last Modified | Shared by | Size | Actions |
|---|---|---|---|---|---|
Client Contracts |
Folder | Sep 19, 2026 | Ananya Rao | — |
Resource Labels
No labels yet
|
Audit-Evidence-Aug2026.pdf |
Sep 12, 2026 | Priya Shah | 3.8 MB |
Resource Labels
Compliance
|
|
incident-report-0912.pdf |
Sep 6, 2026 | Security Team | 1.2 MB |
Resource Labels
Security
|
| Name | Type | Deleted On | Days Before Delete | Size | Actions |
|---|---|---|---|---|---|
old_invoice_batch.zip |
Zip | Sep 10, 2026 | 21 days | 45.2 MB |
Resource Labels
No labels yet
|
Archived Campaign 2025 |
Folder | Aug 28, 2026 | 9 days | — |
Resource Labels
No labels yet
|
legacy_config.yaml |
YAML | Aug 20, 2026 | 1 day | 12 KB |
Resource Labels
No labels yet
|
Preview only — sample data shown for illustration.
Uploading Files
Upload from the dashboard by dragging files onto the file list or using the Upload button. Progress for each file appears in Notifications. Uploading a file with the same name as an existing one adds a new version and keeps the earlier ones.
Drag & Drop your files here
Upload your files by dragging them onto this folder.Illustrative preview — uploads can be dropped anywhere on the file list, not an actual screenshot.
Illustrative preview of upload progress in Notifications — not an actual screenshot.
- Large files: objects up to 5 TB are supported. Large files are uploaded in parts automatically.
- From the command line: use df-agent for scripted, batch, and scheduled uploads, including whole directories.
- With retention: users with the WORM role can protect files as they upload them. See WORM Retention.
- If an upload fails, the error is shown in Notifications and you can upload the file again. df-agent exits with a non-zero code so your scripts can detect the failure.
Downloading Files
Download files or whole folders (as a zip) from the dashboard, or with df-agent. Every download — and every refused or failed attempt — is recorded in the audit log.
Illustrative preview of download progress in Notifications — not an actual screenshot.
Copy a download command
The Download URI action copies a
ready-to-run curl command to your
clipboard, so you can fetch a file straight from a
terminal or server. The command carries a short-lived
access token and is meant for one-off use — for
recurring jobs, use df-agent or the API with a
Service Identity.
Illustrative preview of the "Download URI" action — not an actual screenshot.
Cloning Files
Clone makes an independent copy of a file that has been shared with you. The copy belongs to you, appears in your dashboard, and no longer depends on the original owner's sharing. Cloning copies within your organisation's storage; it is not cross-region replication.
Retention & Governance
Retention decides how long data must be kept, and WORM protection makes sure nobody can change or delete it before then — not a user, not an administrator, and not an attacker using a stolen login.
WORM Storage: Immutable Retention with Object Lock
WORM (Write Once, Read Many) storage lets data be written once and read as often as needed, but not changed or deleted until its retention period ends. DataFrugal enforces WORM with S3 Object Lock on your organisation's storage, so the protection holds at the storage layer as well as in the app.
How to protect a file
In business organisations, users with the WORM role see a retention step when they upload. They choose either:
- Your organisation's default (recommended) — the retention period set by your administrators, or
- A custom date — keep the file until a specific day.
From df-agent, add -crt with a duration such
as 30d, 6m, or 7y
(see command examples).
What protection means
- The file can't be modified or deleted until its retention date.
- Retention can be extended at any time. It can only be shortened through Break Glass.
- Uploading a file with the same name adds a new protected version. Earlier versions stay locked and unchanged.
- Protection stays in place even if the uploader's role changes later.
- In the dashboard, protected files show a lock icon and their retention date, and Delete is blocked while retention is active.
Where WORM is used
Retention Policies
A retention policy sets how long protected data must be kept. Administrators set your organisation's default retention period during setup; it applies whenever a WORM user uploads with the organisation default, and to clones of protected files.
- While retention is active: the file can be read and downloaded, but not changed or deleted.
- After retention ends: the file is managed like any other file and can be deleted normally.
- Deleted files go to the Restore view first, where they can be recovered before permanent removal.
Protecting Backups from Ransomware
Ransomware increasingly goes after backups first: if attackers can encrypt or delete your backup copies, you have nothing clean to recover from. WORM retention takes that option away.
- Protected backups can't be encrypted, overwritten, or deleted before their retention date — even from a compromised user or administrator account.
- Earlier versions stay locked, so a clean recovery point remains available.
- Removing retention early needs two separate administrators to approve, which limits what one compromised account or insider can do.
- Every attempt to download data is audited, which helps you see what was accessed during an incident.
Approved Early Deletion (Break Glass)
Sometimes a protected file genuinely has to go before its retention date — sensitive data uploaded by mistake, the wrong file protected, or a legal instruction to delete. Break Glass is DataFrugal's controlled exception for these cases: no one can remove retention on their own, and every step is recorded.
How it works
- Request. A user with the WORM role tries to delete a protected file, is told it is under retention, and submits a Break Glass request with a business justification and two System Administrators to approve it. They can't name themselves.
- Review. Both administrators receive the request in their Notifications and review it independently. Each can approve or reject.
- Decision. If either rejects, the request is closed and the file stays protected; a new request is needed to try again. If both approve, retention is removed from that file — across all of its current versions — and nothing else.
- Delete. The file can now be deleted, provided no other retention applies.
What gets recorded
The request, both decisions, and the outcome are all in the audit trail:
- Who asked, when, and why
- Which file and which versions were affected
- Which administrators approved or rejected, and when
- The retention change and any deletion that followed
Break Glass at a glance
Audit & Compliance
Audit Trail: Who Accessed What, and When
DataFrugal records the actions that matter for governance — who signed in, who downloaded what, who changed permissions or settings — with a timestamp and the user, service identity, or administrator responsible. System Administrators and Auditors can search and export this history in the web app.
What gets recorded
Every look inside a file is audited
DataFrugal has no file preview. The only way to see what is inside a file is to download it — and downloads are fail-closed. So there is no way to view file contents that doesn't leave an audit record.
What isn't audited, and why the gap is small
Browsing folders, listing files, and searching by name or label are not recorded today. The exposure is narrow:
- Only a file's owner can see it, unless they share it.
- Recipients can't re-share, so access never spreads further.
- Every share is recorded, so you can always list exactly who could have seen a file's name, even though the act of browsing isn't logged.
Audit History Retention
You get a minimum of 100 days of live, searchable audit history, which exceeds a typical 90-day requirement. History is kept in calendar quarters, so most events stay searchable for longer than 100 days.
- Older history is archived, not deleted, with a checksum recorded so its integrity can be verified.
- The process fails safe: if archiving fails, DataFrugal keeps the data rather than dropping it.
Evidence for Audits & Security Questionnaires
When a customer questionnaire, security review, or auditor asks for evidence, this is where DataFrugal's answers come from.
| The question | Where the evidence comes from |
|---|---|
| Who accessed this file, and when? | Download audit — complete, because there is no preview and downloads are fail-closed |
| Who could see this file? | The owner plus the recorded share grants; recipients can't re-share |
| Can anyone delete these records early? | WORM retention with Object Lock; early removal only through dual-approved Break Glass |
| Who changed permissions? | Permission-change audit, with previous and new roles |
| Who signed in? | Sign-in activity log |
| How long are logs kept? | At least 100 days searchable, then archived with a checksum |
| Who reviewed the audit trail? | Audit searches and exports are themselves recorded |
Give reviewers the Auditor role so they can gather this evidence themselves, without being able to change anything.
Security & Access
Roles & Permissions (RBAC)
Every user has one role, and the role decides what they can see and do. System Administrators assign roles from Settings.
| Role | What they can do | API access |
|---|---|---|
| Member | Upload, download, share, clone, and delete files; view reports. | Available |
| Billing | View, download, and pay invoices, plus the same file operations as a Member. | No |
| System Administrator | Full control: users and roles, organisation settings, IP allowlist, billing, ownership transfer, account closure, and approving Break Glass requests. | No |
| Auditor | Read-only access for governance reviews: audit logs, sign-in activity, compliance reports, and file visibility with retention status. Cannot upload, download, delete, or change settings. | No |
| WORM | Business organisations only. Member file operations, plus applying retention on upload, extending retention, and requesting Break Glass. | Available |
Storage Model
DataFrugal provisions and manages all storage for you — you never create or maintain buckets yourself.
- Business organisations (work email) get a dedicated, private storage account on AWS or Wasabi, in the region chosen at signup.
- Individual accounts (personal email) use a shared, DataFrugal-managed storage account on Wasabi. Each user only ever sees their own files and anything shared with them.
- Organisations are kept apart by roles, organisation scoping, and per-organisation storage, so your data is never visible to another organisation.
- Your teams never receive storage credentials. All access goes through DataFrugal's app, API, or df-agent.
Encryption & Bring Your Own Key (BYOK)
- In transit: all traffic to DataFrugal uses HTTPS.
- At rest: stored data is encrypted by the storage provider.
- Bring your own key: on eligible plans, you supply your own key material. It is imported into a dedicated encryption key for your organisation, and every create, rotate, and delete is audited.
IP Allowlisting
A System Administrator can limit direct storage access to approved IP addresses or ranges, under Organisation Access Control → Advanced options → IP allowlist.
IP allowlist
Add IP addresses to restrict access to your organisation.
Illustrative preview of the IP allowlist panel — not an actual screenshot.
Sign-in & Identity Providers
People sign in with email and password (with email verification), or with their Google or Microsoft account. Automation signs in separately, with a Service Identity or the Connector Key, so scripts never need a person's password. Every sign-in, sign-out, and password change is recorded in the audit log.
Automation & API
Everything you can do in the web app you can automate: backups from CI/CD pipelines, cron jobs, database dump scripts, and backup tools. Automation follows the same roles, retention, and audit rules as people do.
REST API
The DataFrugal REST API covers folders, uploads (including multipart uploads for large files), downloads, versions, labels, and sharing. The interactive API reference lets you explore and try every endpoint.
Quickstart
- Create a Service Identity and store its secret safely.
-
Exchange it for an access token at
POST /ext/v1/df/machine-user/auth. - Call the API with that token — for example, create a folder, then upload into it.
df-agent (Command-Line Agent)
df-agent is DataFrugal's command-line tool
for scripted and scheduled work: upload whole
directories, download by ID, share, delete, replace
versions, and apply WORM retention on upload. It talks
to DataFrugal over HTTPS and never needs storage
credentials. It runs on Linux and Windows with Java 8
or later.
Installation
df-agent is built from source with Java 8+ and Maven, together with the df-core-api SDK. Request access below and we'll help you get set up.
Command examples
Every command authenticates with a
Service Identity using
-sid and -secret.
List dashboard resources
./df-agent -sid <service-id> -secret '<secret>' -fd
Upload a file
./df-agent -sid <service-id> -secret '<secret>' -up -f file.pdf -l <folder-id>
Upload a whole directory
./df-agent -sid <service-id> -secret '<secret>' -up -f ./Documents -l <folder-id>
Create a folder
./df-agent -sid <service-id> -secret '<secret>' -up -folder -f "Images" -l <parent-folder-id>
Upload with WORM retention (WORM role)
-crt takes a duration in days, months, or
years, such as 30d, 6m, or
7y.
./df-agent -sid <service-id> -secret '<secret>' -up -f report.pdf -l <folder-id> -crt 7y
Download
./df-agent -sid <service-id> -secret '<secret>' -d -id <resource-id> -f ~/Downloads
Share with a colleague
./df-agent -sid <service-id> -secret '<secret>' -share -id <resource-id> -user colleague@example.com
Delete
./df-agent -sid <service-id> -secret '<secret>' -x -id <resource-id>
./df-agent --help for every option. df-agent
exits with code 1 if any upload fails, so
your scripts and schedulers can alert on it. Username
and password sign-in still works for interactive use,
but automation should always use a Service Identity.
Service Identity
A Service Identity is a machine login for agents, cron jobs, background services, and CI/CD pipelines. Each one has a named owner and can be rotated or revoked on its own, without touching anyone's personal account — and its activity is audited like any user's.
Existing Credential
Illustrative preview of a Service Identity credential — not an actual screenshot.
Create and manage a Service Identity
- Sign in as a System Administrator.
- Open Settings → Service Identity & API Credentials.
- Choose the person responsible for the identity.
-
Enter a name. This becomes the
-sidvalue in df-agent. -
Click Create credentials and copy the
secret straight away — it is shown only once. It
becomes the
-secretvalue. - Use Rotate to issue a new secret. The old one stops working immediately, so update your scripts first.
- Revoke identities you no longer need.
Connector Key
Alongside individual Service Identities, each organisation has one shared Connector Key that df-agent and other integrations can use to connect. Use a Service Identity when you want a named owner per integration; use the Connector Key for a single organisation-wide connection.
System Administrators generate and regenerate it under Settings → Connector Key Management.
Automating Backups (Cron, CI/CD, Bacula)
Already use a backup scheduler? Keep it. Call df-agent or the API as the final step of your existing jobs — for example, after a database dump or a Bacula run — and DataFrugal adds retention, access control, and auditing to the copies you already produce. Downstream systems can be given scoped access to read what they need, without broad storage permissions.
Billing & Plans
DataFrugal pricing follows the amount of data you protect, not the number of people or automation agents using it. Each plan combines a platform subscription with usage-based charges.
- Plans differ by storage provider and included features, such as WORM protection, Break Glass, audit and compliance, BYOK, and IP allowlisting. Compare them on the pricing page.
- Usage is measured on the volume of data protected, so costs grow predictably with your data.
- Invoices and payment history are in the web app for System Administrators and Billing users.
Common Questions
Can an administrator delete data under retention?
Not on their own. Deleting a protected file early needs Approved Early Deletion (Break Glass): a request from the WORM role, approved by two different System Administrators. No single administrator — including DataFrugal Support — can bypass retention alone.
Is every download audited?
Yes. DataFrugal has no file preview, so seeing a file's contents means downloading it, and download auditing is fail-closed — if the audit record can't be written, the download is refused.
How long is audit history kept?
At least 100 days of live, searchable history — more than a typical 90-day requirement — after which it is archived rather than deleted.
Does DataFrugal read my files?
No. DataFrugal works with metadata only — names, sizes, dates, labels, and versions. It never opens or analyses file contents.
Can people I share with pass my files on?
No. Only the owner can share a file or folder, and recipients can't re-share. Every share is recorded.
Can I change my storage region later?
No. The storage provider and region are fixed when your organisation is created, so choose them during setup.
Support
Need help or have a question? We're here for you.
Feature requests
Have ideas to improve the platform? We prioritise suggestions by demand and feasibility.
Submit a feature requestSubmit a support ticket
For technical issues, bug reports, or assistance, submit a ticket using our online form.
Submit a ticket