COSS

Data retention

How long COSS keeps your emails, delivery history and account data, and what happens after.

COSS keeps message data only as long as it is useful for delivery, debugging and abuse prevention. A background job deletes data once it passes the period below, for every organization and environment (sandbox and live alike). Deletion is permanent: COSS cannot restore deleted data.

DataKeptDetails
Emails45 daysSubject, bodies, addresses, headers, tags, recipient statuses, delivery events, opens, clicks and attachment names. Queued and scheduled emails are kept until they are sent or canceled.
Attachment contentUntil the email is sentThe bytes of attachments; only their name, type, size and checksum stay with the email.
Idempotency keys24 hoursA request repeated with the same Idempotency-Key replays the first response.
Webhook deliveries30 daysEvent payloads, delivery statuses and attempt logs (including response excerpts). Deliveries still being retried are kept until they finish.
Log drain batches7 daysThe lines sent to your log drains and their delivery attempts (including response excerpts). Lines that could not be sent within 3 days are dropped.
Content screening results90 daysVerdicts of the automated abuse screening. The screened content itself is never stored.
Reputation statistics31 daysHourly bounce and complaint counts behind your account standing.
Standing notification emails90 daysRecords of the emails sent to owners and admins about a warning or suspension.
Account standing history2 yearsWarnings, suspensions and reinstatements. The latest change is kept while the organization exists.
Admin audit log2 yearsActions COSS staff take on organizations and users.
Expired sessions and invitations7 days after expirySign-in sessions, verification and reset tokens, and invitations that were never accepted.
Invoices and payments10 yearsInvoices with their line items, payments and credit notes, as tax law requires. Kept after your account is closed.
Usage records400 daysHourly counts of billable usage per environment. Each invoice keeps its month's totals.
Billing notification emails90 daysRecords of usage alerts and payment reminders sent to your billing contacts.
Payment provider events30 daysNotifications from our payment processor about invoices and payments.
SuppressionsUntil you delete itAddresses that sends skip. Never removed automatically, so a bounced address stays protected.
Account and configurationWhile your account existsUsers, organizations, projects, environments, API keys, domains, webhook endpoints, log drains, settings, and billing details (plan, contracts and credits). Items you delete (a key, a domain, an endpoint, a drain) are removed right away.

Periods start when the data is created (for example, when you call coss.email.send()), unless the table says otherwise. Deletion runs continuously, so data may disappear shortly after its period ends, never before.

Emails

An email is deleted 45 days after it was created, together with everything recorded about it: recipients and their statuses, delivery events, opens and clicks, tracked links and attachment names. Emails that are still queued or scheduled are kept until they are sent or canceled.

After deletion:

  • coss.email.get(), coss.email.listEvents() and the dashboard return not_found for it.
  • If it had open or click tracking, its tracked links stop redirecting and its open pixel stops counting.
  • Suppressions created by its bounces and complaints stay in place: they still name the email's id, which no longer resolves.

Attachment content is discarded much earlier: as soon as the email is sent, fails or is canceled. Only each attachment's name, type, size and checksum stay with the email.

Webhook deliveries

Every event sent to your webhook endpoints, with its delivery status and the log of attempts (status codes, timing and up to 1 KB of each response), is deleted 30 days after the event. A delivery that is still being retried is kept until it succeeds or gives up.

Keeping your own records

To keep message history longer, store it on your side as it happens: subscribe a webhook endpoint to the events you need (email.sent, email.delivered, email.bounced, …) and record them in your own database. Event payloads include the email's id, sender, recipients, subject, tags and category.

What is never deleted automatically

  • Suppressions stay until you remove them, so an address that bounced or complained stays protected however long ago that was. See suppressions.
  • Account and configuration data: your organization, its members, projects, environments, API keys, domains, webhook endpoints and settings. Anything you delete yourself (a key, a domain, an endpoint) is removed right away.

Abuse prevention

COSS screens a sample of live messages for abuse and keeps the verdict (never the content) for 90 days. Your account standing's history (warnings, suspensions and reinstatements) is kept for 2 years, and the latest change is kept for as long as the organization exists.

On this page