SendlySendly
Trust

Portability and pricing commitments

Take everything with you at any time, and never be surprised by a price change

Two promises, both of which cost us something. That is what makes them worth writing down.

You can take everything, at any time

Not "contact your account manager". Not a CSV of contacts and nothing else. The whole account, on demand, from the dashboard.

What is in the export

IncludedNot included
Your account profileYour password (we never hold a reversible copy)
Every project you ownAPI key secrets and webhook signing secrets — the metadata is there, the credentials are not
Contacts, with their custom fields and subscription stateOther people's projects that you are a member of but do not own
Lists, segments, templates and campaigns
Suppressions — the bounce and complaint record that keeps you out of trouble elsewhere
Events
Sending domains, API key metadata and webhook configuration

Credentials are left out on purpose: the export is a file you download over the network, and a live signing secret in it would be a worse risk to you than the inconvenience of re-issuing one.

How to get it

Settings → Data, "Export account data". It runs in the background — an account with millions of contacts is not something a web request can produce — and the page shows you when it is ready.

Or over the API, signed in:

POST /api/users/me/exports     # start one
GET  /api/users/me/exports     # status and history
GET  /api/users/me/exports/{id}/download

One export per hour per account.

The format

A single gzipped NDJSON file: one JSON object per line, readable with standard tools and streamable without loading it into memory.

gzip -dc sendly-export-*.ndjson.gz | head -1        # the manifest
gzip -dc sendly-export-*.ndjson.gz | jq -c 'select(.dataset == "contacts") | .data'

The first line is a manifest naming every dataset in the file, so you can tell a complete archive from a truncated one.

The download works for 72 hours, then the archive is deleted from our storage. The link is not a public URL — it only works while you are signed in as the account that requested it, so forwarding it to someone does not give them your contact list. Request another one whenever you like.

While a project is stopped

Export still works. A disabled project stays fully readable precisely so that this remains true — see appeals.

Deleting instead

Settings → Data, "Delete account", and confirm by typing your email address. This removes your account and the projects you own. It is not reversible, so export first if you want a copy.

You will not be surprised by a price change

  • 30 days' notice, by email, before any price increase takes effect. Not a changelog entry, not a banner you might not see.
  • Your current price holds through the end of the billing period you are in when the change lands.
  • No mid-term repricing. A price you signed up at is not adjusted retroactively.
  • If a change does not work for you, leave with everything. The export above is the same one you would use on any other day, it does not require an active subscription, and we will not slow it down or hold data back while a subscription is winding down.

Details of what you pay are on the billing page. This page is about what happens when that changes.

No lock-in, concretely

Lock-in is usually not a policy — it is a set of small frictions. Ours, and where they are not:

  • Your data leaves in an open format. NDJSON, documented above, no proprietary container.
  • Your integration is not proprietary either. The API is a published OpenAPI document and the SDKs are open source. Migrating away is rewriting a client, not reverse engineering one.
  • Your suppression list comes with you. It is the piece most platforms quietly keep, and the piece that protects your sender reputation somewhere else.
  • No exit fee, no notice period to cancel, no minimum term.
  • Sending standards — the limits, and what happens at each one.
  • Appeals — if a project has been stopped.
  • Billing — what you pay and how it is measured.

On this page