Trust & transparency
Where your data lives, who touches it, and how it leaves.
The questions a security review asks, answered in one place, for any organisation that moves regulated, confidential or unreleased data. Last updated 21 October 2026. When something changes, this page changes first.
Where data lives
- Files and transfer server
- Google Cloud, Mumbai (asia-south1), a dedicated transfer server with its own storage volume per deployment; each workspace has its own storage root.
- Application and database
- Google Cloud, Mumbai (asia-south1). The database holds accounts, workspaces, share links, receipts, comments and the audit trail — never file contents.
- Backups
- Database dumps expire after 35 days and configuration copies after 90. The transfer server’s disks are snapshotted daily and each snapshot expires after 7 days, so a deleted file leaves the last snapshot no later than 7 days after its purge date, and it never exists in a database dump (dumps hold no file contents).
- Status page
- A separate small host in Mumbai, so status.boita.io stays up when the product does not.
- Custom domains
- Share pages and portals on your own hostname are served by the same Mumbai application; certificates are issued automatically and stored on our edge.
Sub-processors
Third parties that process data on our behalf. We notify workspace owners by email 30 days before adding one.
| Provider | Purpose | Location |
|---|---|---|
| Google Cloud | Hosting, storage, backups, DNS | India (Mumbai); Singapore for backup copies |
| Amazon Web Services | Being retired: stopped servers and older encrypted backup copies, deleted by 28 October 2026 | India (Mumbai); Singapore |
| Resend | Transactional email (codes, share invitations, receipts, alerts) | United States |
| Razorpay | Payments and invoices (card and bank details never reach us) | India |
| Meta (WhatsApp Business Platform) | Support chat and, once enabled, WhatsApp notifications you opt into | Global |
| Umami | Page-view counts on boita.io only — cookieless, no cross-site identifier, not in the app | European Union |
| Crisp | Live chat on boita.io and in the app (your messages and the email on your account; never file contents) | European Union |
| Apple and Google | App distribution and push notifications to the mobile app | Global |
| Expo (EAS) | Mobile app builds and over-the-air updates | United States |
| Sentry | Crash reports from the mobile app (no file contents, no share links) | United States |
| GitHub | Source code and continuous integration (no customer data) | United States |
| Anthropic | Smart search, and delivery summaries when your workspace admin turns them on (file names and sizes, never file contents) | United States |
Encryption and keys
- In transit
- Every transfer session is encrypted end to end by the transfer engine (AES-256). Web, API, share pages and the browser/phone transfer path use HTTPS with TLS 1.2 or newer only.
- At rest — object storage
- Backups and configuration copies are stored with server-side encryption (AES-256); the configuration archive is additionally encrypted with a key held only in our secrets store.
- At rest — server volumes
- Every server volume that holds customer data is encrypted, and encryption by default is enforced for every new volume and snapshot.
- Sender-side encryption
- Password-protected deliveries can be encrypted on the sender’s machine, so the files are unreadable to us until the recipient enters the passphrase.
- Keys
- Per-workspace credentials and integrations are encrypted with a master key that lives only in the server environment and the Founder’s offline secrets store, never in the code repository. Transfer credentials are short-lived tokens minted per operation.
- Passwords
- Argon2id. Two-factor codes and recovery codes are stored hashed. Sessions are rotating refresh tokens with reuse detection.
Retention and deletion
What is deleted when, and how you can verify it. These are commitments, not defaults.
- Files you delete
- Go to the trash and are removed from the storage server after the plan’s trash retention period: 7 days on Free, 30 days on Pro, Scale and Enterprise. Restore is possible until then. Purges are recorded in the audit trail.
- Share links
- Expire on the date you set (plan maximum applies) or when you revoke them; an expired or revoked link stops new and resumed downloads at once. The receipt — who opened, who downloaded, checksums — is kept for the life of the workspace.
- Portal uploads
- Are ordinary files in your workspace from the moment they land; the same rules apply.
- Versions
- Kept until their expiry, then purged the same way as trash.
- Legal hold
- While a hold is on, nothing in its scope is purged, whatever the retention setting.
- Closed workspace
- Ask support to close a workspace (self-serve closure is on the roadmap): files are purged from the storage server within 30 days, and the storage root and its credentials are removed. Invoices and billing records are kept for 8 years as Indian tax law requires, then deleted.
- Backups
- Database dumps expire after 35 days, configuration copies after 90, disk snapshots after 7 (stored in Mumbai). A deleted file therefore leaves the last snapshot no later than 7 days after its purge date and never exists in a database dump (dumps hold no file contents).
- Logs
- Application logs about 30 days; web access logs 180 days (CERT-In direction). Neither holds file contents.
- Proof of deletion
- On request, we provide a signed statement listing the workspace, the storage root and the purge date that completed the deletion. Write to the privacy address below.
Measured, not promised
- Per session
- A single session holds the 45 Mbps plan cap end to end: 40.2 Mbps up and 40.1 down over 10 000 small files (100 KB each, every file verified), 43.7 Mbps on a 20 GB single file, 43.2 Mbps steady for two hours of back-to-back 1 GB uploads and downloads from two machines — 70 transfers, no failures.
- Many sessions
- One machine with 20 parallel sessions moved 10 GB at 791 Mbps up and 847 Mbps down. Ten machines with 120 sessions between them ran 240 transfers with no failures: 4.0 Gbps up in aggregate (the node’s disk ceiling) and 42 Mbps per session down, 500 Mbps per machine.
- Where it breaks
- 200 sessions started within five seconds on one transfer node exhausted its memory (about 60 MB per session) and every session failed. The fix shipped the same day: the API now refuses to mint more sessions than the node can hold and tells the client when to retry, and the node’s daemons are shielded from the memory killer. Capacity is added by adding nodes.
- Method
- Open harness in the repository (infra/loadtest): rented machines in the same region as the node run the same command-line client customers use, against production, and every result file is kept. Ask us for the raw JSON.
How we run the service
- Status and incidents
- Live component health at status.boita.io, with announcements during incidents and maintenance. Every incident gets a written, blameless post-mortem with follow-ups tracked; summaries are published on the status page.
- Backups and recovery
- Database and configuration every 6 hours to two regions. Recovery is rehearsed every month with an automated restore drill that verifies row counts against production. Recovery point objective: 6 hours for the database. During the beta, file storage has no separate backup — keep your own copy of anything you cannot recreate. Recovery time objective: 15 minutes for a database restore.
- Monitoring
- Website, app, API, database, background jobs, transfer service, transfer port, browser transfers, certificate expiry, disk and storage headroom, webhook lag and transfer failure rate are checked continuously; failures page the on-call founder by email and chat within three minutes.
- Access
- Two-factor authentication is mandatory for Boita staff; the transfer server’s management API is unreachable from the internet; support works from metadata and staff have no default access to your files.
- Vulnerability reports
- To security@boita.io. We acknowledge within 2 business days and do not pursue good-faith researchers.
- Compliance
- SOC 2 Type II is in progress (platform onboarding started September 2026). Independent penetration testing and TPN alignment follow on the same programme; the TPN control-by-control self-assessment and gap list are available on request. DPDP Act and CERT-In obligations are reflected in the retention table above.
- Security review
- A second-reviewer security and correctness review dated 21 September 2026 covered everything shipped in the preceding week; each finding got a failing test before its fix. The report is available on request; the controls it touched are on the Security page.
- Content controls
- Visible per-recipient watermarks (Scale and above) and an invisible forensic mark on video (Enterprise); malware scan on arrival with quarantine, DLP hooks before links go out, legal hold with export packages, SCIM provisioning, audit export and a signed SIEM stream, IP allow-lists and device policies (Enterprise). Details and limits on the Enterprise page.
Related: Security, Enterprise controls, Data processing, Privacy policy, status.boita.io. Privacy requests: support@boita.io.
Need the questionnaire filled in?
Send us your security questionnaire or DPA; most answers are on this page and we return the rest within five business days.