DataFrugal Documentation

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.

DataFrugal never reads your files. It works with metadata only — names, sizes, dates, labels, and versions. There is no file preview: the only way to see what is inside a file is to download it, and every download is audited.

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.

Prove who accessed your data Every download is recorded. If the record can't be written, the download is refused.
Retention nobody can quietly undo No single user or admin can delete protected data. Exceptions need two administrators.
Backups ransomware can't touch A stolen login can't encrypt or delete backups that are under retention.
Automated, not manual API and CLI for nightly jobs and pipelines, with the same rules as the web app.

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 audits

IT & 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 teams

Finance, 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 firms

Legal 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 firms

Healthcare & 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 trail

Pharma & 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 pharma

Log & 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 storage

Engineering & 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 files

HR & 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 & permissions
Small practice or team? A CA practice, clinic, or law chamber gets the same protection. Sign up with your work email so you get a business organisation — WORM retention and IP allowlisting aren't available on individual accounts created with a personal email.

Getting 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.
Choose your region and plan carefully. The storage provider and region are fixed once your organisation is created, so your data stays where you put it.
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.

Sign in
you@acme.com
••••••••
Sign in
or continue with
Continue with Google
Continue with 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

Welcome to DataFrugal

Secure File Storage Restore & Versions Notifications Usage Analytics
AWS Wasabi
Get Started
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.

Continue with your setup
Join OrganisationJoin an existing organisation using an invitation from your admin.
Create OrganisationSet up a new organisation and get started with DataFrugal.
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.

Create an Organisation

Choose carefully: the datastore and region can't be changed once your organisation is created.

Enterprise Plus
Asia Pacific (Mumbai)
Enterprise PlusAWS-hosted · usage-based
WORM Protection Break Glass Access Audit & Compliance BYOK API Agent Share
Set up your organisation

Name your organisation, review your retention defaults, and add contact details. Administrators can also configure an IP allowlist here.

Setup organisation

Organisation Details

Display nameAcme Engineering
Plan / RegionEnterprise Plus · Asia Pacific (Mumbai)
Retention (Object / Compliance)365 / 2555 days

Contact Information

TaxId (GST/VAT)22AAAAA0000A1Z5
Notification emailsops@acme.com
Complete payment

A one-time setup fee activates your organisation's dedicated workspace.

Payment

Payment Summary

One-time setup feeBased on your plan
TaxAs applicable
TotalShown before you pay
Pay Now
You're all set

DataFrugal finishes provisioning your organisation's storage and takes you straight to your dashboard.

Setting up

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.

Sign in
jordan@gmail.com
••••••••
Sign in
or continue with
Continue with Google
Continue with 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

Welcome to DataFrugal

Secure File Storage Restore & Versions Notifications Usage Analytics
AWS Wasabi — your storage provider
Get Started
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.

Continue with your setup

You're using a personal email address, so we'll get you set up with your own personal workspace.

Join OrganisationJoin an existing organisation using an invitation from your admin.
Create OrganisationSet up a new organisation and get started with DataFrugal.
Choose your plan

Pick a subscription plan. There's no region selector — your storage is already fixed to DataFrugal's shared Wasabi-hosted workspace.

Create an Organisation

Select a subscription plan to match your needs. Plans define features and pricing — your datastore and region are already set for personal accounts.

Personal Light
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
Setup organisation
Set up your organisation's storage, contacts, and access preferences.
Contact information Primary and additional contact details for your organisation.
Your organisation's GST/VAT number.
22AAAAA0000A1Z5
Optional phone numbers for your organisation.
Separated by commas
Recipients for platform alerts and system notifications.
Separated by commas
Cancel
Submit
Complete payment

Individual accounts still complete the same payment step as business accounts, sized to the plan chosen.

Payment

Payment Summary

One-time setup feeBased on your plan
TaxAs applicable
TotalShown before you pay
Pay Now
You're all set

DataFrugal takes you straight to your dashboard, inside your personal, Wasabi-hosted workspace.

Setting up

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.
  • Shared with me — files and folders other people have shared with you, with a Shared by column showing the owner. You can download, view versions and details, or clone an item into your own space.
  • 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
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
PDF Sep 12, 2026 Priya Shah 3.8 MB
Resource Labels
Compliance
incident-report-0912.pdf
PDF Sep 6, 2026 Security Team 1.2 MB
Resource Labels
Security
Restore items
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.

Dashboard

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.

Notifications — Uploads
In Progress
archive-old.zip
9.2 MB of 14.8 MB3.4 MB/s2s left
62%
Completed
Q3-Revenue-Summary.pdf
Completed2.4 MB
Queued
customer_master.csv
Queued860 KB

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.

Notifications — Downloads
In Progress
customer_master.csv
688 KB of 860 KB1.1 MB/s1s left
80%
Completed
backup-policy.docx
Completed128 KB
Creating a zip: Finance Reports

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.

Dashboard
Q3-Revenue-Summary.pdf
cURL command copied to clipboard

Illustrative preview of the "Download URI" action — not an actual screenshot.

Sharing Files Securely

Owners can share individual files or whole folders with other users in the web app or with df-agent. Sharing is deliberately simple and closed:

  • Every file and folder has exactly one owner, and only the owner can share it.
  • People you share with cannot re-share, so access never spreads beyond who you chose.
  • There are no public or anonymous links.
  • Every share is recorded, and every download of shared content is audited together with who shared it.
Note: Sharing a folder gives access to the files inside it. To share a single file, share it directly.

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.

Cloning a protected file keeps it protected. If the original is under WORM retention, the clone gets its own retention period from your organisation's current default. If your organisation has no default retention set, cloning a protected file is blocked rather than creating an unprotected copy.

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.
Governance mode, by design: DataFrugal applies Object Lock in governance mode, not compliance mode. That is what makes a controlled exception possible. Inside DataFrugal, retention can't be bypassed by any single person — the only way to end it early is the dual-approval Break Glass process.
Where WORM is used
Backup protection Keeps recovery copies safe from tampering and deletion.
Long-term archives Preserves data unchanged for its full retention period.
Financial records Statements, ledgers, and invoices kept as originally filed.
Healthcare records Patient files held for their required retention period.
Legal evidence An authentic, unaltered original you can stand behind.
Regulatory retention Supports record-keeping periods set by regulators and contracts.

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.

Not for routine cleanup. Break Glass is for genuine exceptions. For day-to-day deletion, let retention expire.
How it works
Break Glass dual-approval flow: a blocked delete becomes a request from the WORM role, two System Administrators review it independently, and retention is removed only if both approve. Delete blocked retention active Break Glass request from the WORM role names 2 approvers 2 System Admins review independently requester can't approve Both approve retention removed Either rejects file stays protected
Either outcome is recorded in the audit trail.
  • 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
Two-person approval Two different System Administrators must approve.
Separated duties Only the WORM role can request; only admins approve; nobody approves their own request.
One file at a time Applies to a single file, never the whole account.
Full audit trail Every request and decision is recorded.
Not supported: single-approver requests, approval by DataFrugal Support, approval by email, deleting individual versions, or Break Glass for restore or replace operations.

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
Sign-in activity Logins, logouts, and password changes.
Downloads Every request and every link issued, plus denied, blocked, and failed attempts — including folders.
Permission changes Every role assigned, changed, or removed, with the before and after.
Settings & account changes File, sharing, account, and billing changes, shown as readable actions.
Encryption key lifecycle Creation, rotation, and deletion of your organisation's key.
Subscription changes Plans created, updated, and switched.
Who read the audit log Searches and exports of audit history are themselves recorded.
Fail-closed downloads: if DataFrugal can't write the audit record for a download, it refuses to issue the download. Nobody gets access to your data without a matching record.
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.
Note: Archived history can be retrieved and searched on request, but not instantly the way live history can. Allow a short turnaround when an investigation reaches back beyond the live window.

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
Separation of duties: only the WORM role can request early deletion, only System Administrators can approve it, and nobody can approve their own request. Changing a user's role never removes retention from files they protected.

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.
How BYOK custody works: the key material comes from you, and DataFrugal keeps a secure copy of it to run the managed service. Key custody is shared between you and DataFrugal.

IP Allowlisting

A System Administrator can limit direct storage access to approved IP addresses or ranges, under Organisation Access Control → Advanced options → IP allowlist.

Advanced options

IP allowlist

Add IP addresses to restrict access to your organisation.

IP address 203.0.113.42 Add IP

Illustrative preview of the IP allowlist panel — not an actual screenshot.

Scope: the allowlist applies to direct storage access — for example, an upload or download link used from outside your network. It does not restrict signing in to the web app or API, and it is available only to business organisations with dedicated storage.

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.
View API Reference

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.

terminal — nightly backup job
$ ./df-agent -sid production-etl -secret '••••••••' -up -f Q3-Revenue-Summary.pdf -l finance-reports
Authenticating service identity production-etl … OK
Uploading Q3-Revenue-Summary.pdf (2.4 MB) → Finance Reports
100%
✓ Upload complete (exit code 0)
Dashboard
My Files Finance Reports
NameLast modifiedSize
Q3-Revenue-Summary.pdf New Just now2.4 MB
budget-2027.xlsx Sep 14, 2026640 KB
Q2-Revenue-Summary.pdf Jun 30, 20262.1 MB
Uploaded by production-etl
Illustrative animation — a df-agent upload from a backup job arriving in the dashboard. Not a screen recording.
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>
Tip: run ./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.
Request df-agent Access

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.

Settings — Service Identity & API Credentials

Existing Credential

Active Created Aug 12, 2026 · Last rotated Sep 2, 2026
Service Identity Name production-etl
Secret Key (API Credential) ••••••••••••••••
Created By ananya.rao@company.com
Rotate Secret Key Revoke Credentials
This secret key is only shown once when created or rotated. Store it securely.

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 -sid value in df-agent.
  • Click Create credentials and copy the secret straight away — it is shown only once. It becomes the -secret value.
  • Use Rotate to issue a new secret. The old one stops working immediately, so update your scripts first.
  • Revoke identities you no longer need.
Keep secrets safe: store them in a secrets manager such as AWS Secrets Manager or HashiCorp Vault. Never put them in git, email, or client-side code.

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.

Regenerating replaces the key immediately. Anything still using the old key stops working until you update it.

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.
Changing plans: plan changes aren't self-service yet. Contact the support team and they'll make the change for you. For rate cards, tax details, or custom billing, see the pricing FAQ or email support.

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.

See All FAQs

Support

Need help or have a question? We're here for you.

Email us

Reach the DataFrugal support team directly.

support@datafrugal.com

Contact form

Fill out our contact form and we'll get back to you shortly.

Open contact form

Feature requests

Have ideas to improve the platform? We prioritise suggestions by demand and feasibility.

Submit a feature request

Submit a support ticket

For technical issues, bug reports, or assistance, submit a ticket using our online form.

Submit a ticket
× Zoomed view