Skip to main content
Every inference model on the platform is zero data retention (ZDR). Your prompts and completions are not stored, by us or by the compute we route your request to, and they are never used for training. This page says how that holds, and states the boundaries as plainly as the guarantee.

How zero data retention is kept

  • On our side. The request record holds metadata only (the table below). When a request runs on our own GPUs, the request body is held only while the request is in flight and is cleared from the work queue the moment it finishes.
  • Upstream. Each source of compute is recorded with whether it keeps request bodies. A model can only be routed to compute recorded as keeping none, and that is checked every time routing changes, not once at launch.
  • What you see. The console marks a model ZDR from that same record. If a model were ever served by compute that keeps data, the mark would disappear from that model; it is not a label we print on everything.

Prompts and completions are not stored

A call leaves behind a request record, and that record holds metadata only: Writing a prompt, a completion, or an API key in plaintext to a log is prohibited in this codebase and enforced by a linter, not left to reviewer attention. That is the mechanism behind the right-hand column.
The consequence worth planning around: we cannot show you the text of an old call, because we do not have it. If you need prompt-level history, keep it on your side. What we can reconstruct from a request id is the route, the timing, the tokens and the outcome.

API keys

Created in the console, shown once, stored as a hash plus the first eight characters for display. There is no screen and no support process that can recover one — losing a key means revoking it and creating another. Revocation takes effect for new requests within seconds. Requests already accepted are not cancelled by it, so treat anything already in flight as served.

Media you send

An image is fetched and normalised so the model can read it. Where a model cannot accept it, the request is rejected before the fetch — a mistaken request does not cause a transfer or a write.

What this page does not claim

Being useful here means being clear about the edges:
  • Zero data retention covers inference. Fine-tuning is a different product: the dataset you upload is stored so the job can read it, and kept as described on the dataset’s page.
  • A dedicated deployment is covered when the console shows the model as ZDR. If your use has a contractual retention requirement, raise it with us and we will answer for your account and your models specifically.
  • It states no retention period for the request records above.
  • It is not a compliance statement. Contractual data-protection terms are handled through your organization’s agreement — which is also what AGREEMENT_REQUIRED is asking for when it appears.

Next

Authentication

How keys are issued, scoped and revoked.

Routing and providers

What the response says about who served the call.