Zero data retention

Restrict routing to vendors that don't retain or train on your data

Zero data retention (ZDR) is an org-level toggle in Gateway. When enabled, Gateway only routes your requests to vendors that have a contractual zero data retention agreement, so your prompts and completions are not stored by the vendor, used for model training, or used for model improvement.


How it works

  • Org-level toggle. ZDR is a single setting on your organization. It applies to every project, every API key, and every request.
  • Routing is filtered. When ZDR is on, Gateway restricts each request’s routing candidates to ZDR-supported vendors only. Other vendors are never selected, even if they appear in your routing policy.
  • Fail-closed. If a request resolves to a routing policy with no ZDR-supported vendors, Gateway rejects it with HTTP 400 and an error message that includes the phrase “Zero Data Retention”. Gateway does not silently fall back to a vendor without ZDR.

Supported vendors

Gateway supports ZDR for the following vendors:

  • Amazon Bedrock
  • Baseten
  • BytePlus
  • Cohere
  • Fireworks AI
  • Google Vertex AI
  • MiniMax
  • Modal
  • Moonshot AI
  • MorphLLM
  • OpenAI
  • Parasail
  • Sakana AI
  • Tera
  • Together AI
  • xAI

More vendors are added as agreements are signed. For the authoritative per-model list, call GET /v1/models and filter on the zero_data_retention field on each model object.

ZDR support is tracked at the vendor level in Gateway’s catalog. A vendor with ZDR support means Merge has a zero data retention agreement in place with that vendor that covers traffic routed through Gateway.


When to enable it

Turn ZDR on when your workload has any of the following characteristics:

  • Regulated data. You send PII, PHI, or financial data that falls under HIPAA, GDPR, SOC 2, PCI, or a similar framework.
  • Customer contracts that prohibit training on their data. Many enterprise agreements forbid third-party model providers from retaining or learning from customer content.
  • Regulated industries. Healthcare, legal, financial services, and government workloads that require an audit trail showing no vendor retention.
  • Confidential product content. Pre-release roadmap, source code, internal strategy docs, or anything covered by an NDA.
  • Customer-facing AI features where data provenance matters. If you market your product as “your data stays yours,” ZDR lets you enforce that claim at the routing layer rather than through per-vendor configuration.

If your org uses BYOK for a vendor, Gateway treats that vendor as ZDR-compliant for your org. BYOK traffic goes to the vendor under your own account and agreement, so data retention is governed by your contract with the vendor directly.


Enabling ZDR

Open the Vendor configuration page and flip the Zero data retention toggle. The change takes effect on the next request. No code changes are required on your side.

Only org admins can change this setting


Error shape

When ZDR is on and a request cannot be routed to a supported vendor, Gateway returns:

1{
2 "error": {
3 "type": "invalid_request_error",
4 "message": "Zero Data Retention: no eligible vendor is available for this request.",
5 "code": 400
6 }
7}

Handle this like any other invalid_request_error. The stable signal to match on is HTTP 400 with a message containing Zero Data Retention.


Checking ZDR status per model

Each model exposes a zero_data_retention boolean. Filter the model list to see exactly which models your app can use while ZDR is on.

1from merge_gateway import MergeGateway
2
3client = MergeGateway(api_key="YOUR_API_KEY")
4
5models = client.models.list()
6zdr_models = [m for m in models.data if m.zero_data_retention]
7
8for m in zdr_models:
9 print(m.id)

Models with ZDR coverage

The table below lists every model that has at least one ZDR-covered vendor route, along with the vendors that provide it. When ZDR is enabled, requests for these models only route to the vendors shown. Models not listed here are rejected while ZDR is on.

ModelZDR vendors
ai21/jamba-1-5-largeAmazon Bedrock
ai21/jamba-1-5-miniAmazon Bedrock
amazon/nova-2-liteAmazon Bedrock
amazon/nova-liteAmazon Bedrock
amazon/nova-microAmazon Bedrock
amazon/nova-premierAmazon Bedrock
amazon/nova-proAmazon Bedrock
amazon/titan-tg1-largeAmazon Bedrock
anthropic/claude-3-7-sonnet-20250219Amazon Bedrock
anthropic/claude-haiku-4-5-20251001Amazon Bedrock
anthropic/claude-opus-4-1-20250805Amazon Bedrock
anthropic/claude-opus-4-5-20251101Amazon Bedrock
anthropic/claude-opus-4-6Amazon Bedrock
anthropic/claude-opus-4-7Amazon Bedrock
anthropic/claude-opus-4-8Amazon Bedrock
anthropic/claude-opus-5Amazon Bedrock
anthropic/claude-sonnet-4-5-20250929Amazon Bedrock
anthropic/claude-sonnet-4-6Amazon Bedrock
anthropic/claude-sonnet-5Amazon Bedrock
arcee-ai/trinity-large-thinkingParasail
bytedance/dola-seed-2.0-code-previewBytePlus
bytedance/dola-seed-2.0-liteBytePlus
bytedance/dola-seed-2.0-miniBytePlus
bytedance/dola-seed-2.0-proBytePlus
bytedance/ui-tars-1.5-7bParasail
cohere/command-a-03-2025Cohere
cohere/command-r-08-2024Cohere
cohere/command-r-plus-08-2024Cohere
cohere/command-r7b-12-2024Cohere
deepseek/deepseek-r1Amazon Bedrock
deepseek/deepseek-r1-0528Tera
deepseek/deepseek-v3Amazon Bedrock
deepseek/deepseek-v3.1Baseten, Tera
deepseek/deepseek-v3.2Amazon Bedrock, Parasail, Tera
deepseek/deepseek-v4-flashMorphLLM, Tera
deepseek/deepseek-v4-proFireworks AI, Tera, Together AI
google/gemini-2.5-flashGoogle Vertex AI
google/gemini-2.5-flash-liteGoogle Vertex AI
google/gemini-2.5-proGoogle Vertex AI
google/gemini-3.5-flashGoogle Vertex AI
google/gemini-3.5-flash-liteGoogle Vertex AI
google/gemini-3.6-flashGoogle Vertex AI
google/gemini-embedding-001Google Vertex AI
google/gemma-3-12b-itAmazon Bedrock
google/gemma-3-27b-itAmazon Bedrock, Parasail
google/gemma-3-4b-itAmazon Bedrock
google/gemma-4-26b-a4b-itParasail, Tera
google/gemma-4-31b-itParasail
meta/llama-3-70b-instructAmazon Bedrock
meta/llama-3-8b-instructAmazon Bedrock
meta/llama-3.1-70b-instructAmazon Bedrock
meta/llama-3.1-8b-instructAmazon Bedrock
meta/llama-3.3-70b-instructAmazon Bedrock, Parasail, Tera, Together AI
meta/llama-4-maverick-17b-128e-instructAmazon Bedrock, Parasail
meta/llama-4-scout-17b-16e-instructAmazon Bedrock
minimax/minimax-m2Amazon Bedrock, MiniMax, Tera
minimax/minimax-m2.1Amazon Bedrock, MiniMax
minimax/minimax-m2.1-highspeedMiniMax
minimax/minimax-m2.5Amazon Bedrock, MiniMax, Parasail
minimax/minimax-m2.5-highspeedMiniMax
minimax/minimax-m2.7Fireworks AI, MiniMax, Together AI
minimax/minimax-m2.7-highspeedMiniMax
minimax/minimax-m3MiniMax
mistral/devstral-2512Amazon Bedrock
mistral/magistral-small-2509Amazon Bedrock
mistral/ministral-14b-2512Amazon Bedrock
mistral/ministral-3b-2512Amazon Bedrock
mistral/ministral-8b-2512Amazon Bedrock
mistral/mistral-large-2512Amazon Bedrock
mistral/voxtral-mini-3b-2507Amazon Bedrock
mistral/voxtral-small-24b-2507Amazon Bedrock
moonshot/kimi-k2.5Baseten, Amazon Bedrock, Moonshot AI, Tera
moonshot/kimi-k2.6Baseten, Fireworks AI, Moonshot AI, Tera, Together AI
moonshot/kimi-k2.7-codeFireworks AI, Moonshot AI
moonshot/kimi-k2.7-code-highspeedMoonshot AI
moonshot/kimi-k3Baseten, Fireworks AI, Modal, Moonshot AI
moonshot/moonshot-v1-128kMoonshot AI
moonshot/moonshot-v1-128k-vision-previewMoonshot AI
moonshot/moonshot-v1-32kMoonshot AI
moonshot/moonshot-v1-32k-vision-previewMoonshot AI
moonshot/moonshot-v1-8kMoonshot AI
moonshot/moonshot-v1-8k-vision-previewMoonshot AI
moonshot/moonshot-v1-autoMoonshot AI
morph/morph-compactorMorphLLM
morph/morph-v3-fastMorphLLM
morph/morph-v3-largeMorphLLM
nvidia/nemotron-120b-a12bBaseten
nvidia/nemotron-nano-12bAmazon Bedrock
nvidia/nemotron-nano-12b-v2Amazon Bedrock
nvidia/nemotron-nano-3-30bAmazon Bedrock
nvidia/nemotron-nano-9bAmazon Bedrock
nvidia/nemotron-nano-9b-v2Amazon Bedrock
nvidia/nemotron-super-3-120bAmazon Bedrock
openai/gpt-3.5-turboOpenAI
openai/gpt-3.5-turbo-0125OpenAI
openai/gpt-3.5-turbo-1106OpenAI
openai/gpt-3.5-turbo-16kOpenAI
openai/gpt-4OpenAI
openai/gpt-4-0613OpenAI
openai/gpt-4-turboOpenAI
openai/gpt-4-turbo-2024-04-09OpenAI
openai/gpt-4.1OpenAI
openai/gpt-4.1-2025-04-14OpenAI
openai/gpt-4.1-miniOpenAI
openai/gpt-4.1-mini-2025-04-14OpenAI
openai/gpt-4.1-nanoOpenAI
openai/gpt-4.1-nano-2025-04-14OpenAI
openai/gpt-4oOpenAI
openai/gpt-4o-2024-05-13OpenAI
openai/gpt-4o-2024-08-06OpenAI
openai/gpt-4o-2024-11-20OpenAI
openai/gpt-4o-miniOpenAI
openai/gpt-4o-mini-2024-07-18OpenAI
openai/gpt-4o-mini-search-previewOpenAI
openai/gpt-4o-mini-search-preview-2025-03-11OpenAI
openai/gpt-4o-search-previewOpenAI
openai/gpt-4o-search-preview-2025-03-11OpenAI
openai/gpt-5OpenAI
openai/gpt-5-2025-08-07OpenAI
openai/gpt-5-chat-latestOpenAI
openai/gpt-5-miniOpenAI
openai/gpt-5-mini-2025-08-07OpenAI
openai/gpt-5-nanoOpenAI
openai/gpt-5-nano-2025-08-07OpenAI
openai/gpt-5-search-apiOpenAI
openai/gpt-5-search-api-2025-10-14OpenAI
openai/gpt-5.1OpenAI
openai/gpt-5.1-2025-11-13OpenAI
openai/gpt-5.1-chat-latestOpenAI
openai/gpt-5.2OpenAI
openai/gpt-5.2-2025-12-11OpenAI
openai/gpt-5.2-chat-latestOpenAI
openai/gpt-5.3-chat-latestOpenAI
openai/gpt-5.4OpenAI
openai/gpt-5.4-2026-03-05OpenAI
openai/gpt-5.4-miniOpenAI
openai/gpt-5.4-mini-2026-03-17OpenAI
openai/gpt-5.4-nanoOpenAI
openai/gpt-5.4-nano-2026-03-17OpenAI
openai/gpt-5.5OpenAI
openai/gpt-5.5-2026-04-23OpenAI
openai/gpt-5.6-lunaOpenAI
openai/gpt-5.6-solOpenAI
openai/gpt-5.6-terraOpenAI
openai/gpt-audioOpenAI
openai/gpt-audio-miniOpenAI
openai/gpt-oss-120bBaseten, Amazon Bedrock, BytePlus, Fireworks AI, Parasail, Tera, Together AI
openai/gpt-oss-20bAmazon Bedrock, Parasail, Tera, Together AI
openai/gpt-oss-safeguard-120bAmazon Bedrock
openai/gpt-oss-safeguard-20bAmazon Bedrock
openai/o1OpenAI
openai/o1-2024-12-17OpenAI
openai/o3OpenAI
openai/o3-2025-04-16OpenAI
openai/o3-miniOpenAI
openai/o3-mini-2025-01-31OpenAI
openai/o4-miniOpenAI
openai/o4-mini-2025-04-16OpenAI
openai/whisper-1OpenAI
qwen/qwen2.5-vl-72b-instructParasail
qwen/qwen3-235b-a22b-instruct-2507Parasail, Tera, Together AI
qwen/qwen3-32bAmazon Bedrock
qwen/qwen3-coder-30b-a3bAmazon Bedrock
qwen/qwen3-coder-480b-a35bAmazon Bedrock
qwen/qwen3-coder-480b-a35b-instructTera
qwen/qwen3-coder-nextAmazon Bedrock, Parasail
qwen/qwen3-next-80b-a3bAmazon Bedrock
qwen/qwen3-next-80b-a3b-instructParasail, Tera
qwen/qwen3-next-80b-a3b-thinkingTera
qwen/qwen3-vl-235b-a22bAmazon Bedrock
qwen/qwen3-vl-235b-a22b-instructParasail
qwen/qwen3-vl-8b-instructParasail
qwen/qwen3.5-35b-a3bParasail
qwen/qwen3.5-397b-a17bParasail
qwen/qwen3.6-plusFireworks AI
qwen/qwen3.7-plusFireworks AI
sakana/fugu-ultraSakana AI
thinkingmachines/inklingBaseten
writer/palmyra-x4Amazon Bedrock
writer/palmyra-x5Amazon Bedrock
xai/grok-4.20-0309-non-reasoningxAI
xai/grok-4.20-0309-reasoningxAI
xai/grok-4.3xAI
xai/grok-4.5xAI
xai/grok-build-0.1xAI
zai/glm-4.7Baseten, Amazon Bedrock, BytePlus, Tera
zai/glm-4.7-flashAmazon Bedrock
zai/glm-5Baseten, Amazon Bedrock, Parasail, Tera
zai/glm-5.1Parasail
zai/glm-5.2Baseten, Fireworks AI, Together AI

FAQ

Neither. ZDR is an org-level toggle. When enabled, it applies to every project, every API key, and every request from your organization.

Gateway filters the policy’s candidate list down to ZDR-supported vendors at request time. If at least one supported vendor remains, the request proceeds. If none remain, Gateway rejects the request with HTTP 400.

If your org has BYOK configured for a vendor, Gateway treats that vendor as ZDR-compliant for your org. BYOK traffic uses your own provider account, so retention is governed by your contract with the vendor.

Call GET /v1/models and read the zero_data_retention field on each model object. That field is the authoritative source and is updated automatically as new vendors and models are added.

Yes, through the search providers that retain no query data. Gateway checks the provider you request, so exa and youcom are available while parallel is rejected with a server_tool_zdr_unavailable error. Leaving engine unset, or setting it to auto, resolves to a provider that retains no query data. See Web search for the current list.

Yes. Merge adds vendors as zero data retention agreements are signed. The zero_data_retention field on the model object is the source of truth, so your code does not need to be updated when new vendors are added.

No directly measurable effect. ZDR changes which vendors are candidates, not how requests are processed. If your preferred vendor is not ZDR-supported, traffic shifts to a supported vendor, which can change cost and latency based on that vendor’s pricing and performance.


Next steps