Subprocessors.
The complete list of third parties that process data on Sink's behalf when you use the hosted service — what each one handles, and where it sits. The list is short on purpose.
Infrastructure subprocessors
These process data for every hosted customer. Each is bound by a data processing agreement that holds them to obligations no weaker than ours.
| Subprocessor | Purpose | Data processed | Location |
|---|---|---|---|
| Fly.ioApplication hosting | Runs the API, dashboard and background workers | All data in transit through the application, in memory during request handling; request metadata | Johannesburg, South Africa |
| NeonManaged PostgreSQL | Primary database and backups | Accounts, workspaces, membership, secret names, encrypted secret values and versions, audit logs, billing records | London, UK (AWS eu-west-2) |
| Amazon Web ServicesUnderlying infrastructure | Hosts the Neon database region as Neon's own subprocessor | Same as Neon, at the storage layer | London, UK (eu-west-2) |
| SendByteTransactional email | Delivers verification codes, invitations and service notices | Recipient email address, name, and message content | Abuja, Nigeria |
| BachsPayments | Hosted checkout, subscriptions, invoices and the customer portal | Name, email, billing details, payment credentials and transaction history — payment credentials are entered on Bachs and never reach Sink | Lagos, Nigeria |
| Pydantic LogfireObservability | Request traces, error reporting and performance metrics | Request method, path, status, timing, trace id, IP address, user agent, and exception detail. Secret values are not sent | Virginia, US |
| ByteshipObject storage | Stores files uploaded through the dashboard, such as images | Uploaded file contents and their metadata | Lagos, Nigeria |
Services you connect yourself
These are not subprocessors. Nothing reaches them unless you choose to connect them, and each acts under your instruction, not ours, on its own terms.
| Service | When it applies | What is exchanged |
|---|---|---|
| GoogleOAuth sign-in | Only if you sign in with Google | We receive your Google account id, email and name; Google learns you signed in to Sink |
| GitHubOAuth sign-in | Only if you sign in with GitHub | We receive your GitHub account id, email and name; GitHub learns you signed in to Sink |
| Railway, Vercel, RenderEnvironment import | Only if you import environment variables from one | We send the API token you supply and read the variables you select for import |
Self-hosted deployments
If you run Sink on your own infrastructure, none of the above applies. Your deployment talks to the database, cache, mail server and observability backend that you configure, and no data reaches us.
A note on the cache
Redis backs rate limiting and share links. It runs inside our own deployment rather than as a third-party managed service, so it is not listed above — but it does hold share-link records (secret ids, view limits, expiry) for as long as a link is live.
Changes to this list
Before we add or replace a subprocessor, we will update this page and give account holders at least 30 days' notice by email. If you object to a new subprocessor on reasonable data protection grounds, tell us at [email protected] within that window; if we cannot resolve it, you may cancel your subscription and receive a pro-rata refund of the unused term.
To subscribe to change notices, email [email protected] and we will add you to the list.