Data policy
Docs · Routing & privacy

Data policy

Require no-training or zero data retention (ZDR) per request or for a whole account, and see what we store.

A data policy limits which upstream providers can serve a request, based on what each one commits to do with your prompts and responses. You can set one on a single request, or set a floor for a whole account.

The three levels#

Each provider has a data policy. The levels are ordered, and a stricter level includes the one below it: a provider that keeps nothing cannot train on your data.

LevelWhat it means
StandardNo specific retention commitment on file.
No trainingCommitted not to train on your data.
Zero data retention (ZDR)Committed to retain no request or response content.

Models that have at least one zero-retention route are marked on the Models page.

Ask for a level on one request#

Add a field to the provider object:

json
{
  "model": "deepseek/deepseek-v4-pro",
  "messages": [{ "role": "user", "content": "Hello" }],
  "provider": { "zdr": true }
}
FieldRoutes only to providers committed to
"zdr": trueZero data retention.
"data_collection": "deny"Not training on your data. A ZDR provider also qualifies.

These are hard filters. If no provider for the model meets the requirement, the request fails with 503 no_provider_matches_data_policy. It never falls back to a provider that does not qualify.

An unrecognized value returns 400 instead of being ignored. Ignoring a privacy requirement would return 200 from an upstream that keeps your data, and you would have no way to tell.

Set a floor for the whole account#

A floor applies to every request in the account, including requests from SDKs and tools you did not write, so you do not have to pass a field on every call.

To set it:

  1. Open the console and switch to the organization or personal space you want to protect.
  2. Click the gear next to its name at the bottom of the sidebar.
  3. Under Access defaults, choose No requirement, No training, or Zero data retention, then save.

Who can set it: an organization's admins, and the owner of a personal space. Members cannot.

A request can ask for something stricter than the floor, but never looser. If the floor is ZDR, a request that says "zdr": false is still routed to ZDR providers only.

Raising the floor can make some models unavailable#

Not every model has a provider at every level. When you raise the floor, models without a qualifying provider return 503 until you lower it again. Before you save, the console shows how many models stay callable, for example "41 of 65".

The floor is read on every request, so a change applies to the next call.

What we store#

We do not store request or response content, only metering metadata: model, token counts, latency, and status. A data policy is about what the upstream provider does with your content, which is a separate question from what we keep.

Pricing at a stricter level#

Prices on the Models page can change when you filter by data policy, because only providers that qualify count. If a model costs $1 on a standard provider and $3 on a ZDR provider, a request with "zdr": true is billed at $3. The Models page accepts a ?data_policy= filter so what you see matches what you pay.