How ZDR Works
When ZDR is enabled for a request, ARouter:- Filters the provider pool to only ZDR-compliant endpoints
- Routes the request to a compliant provider
- Returns
provider.zdr: truein the response metadata
404 error.
Enabling ZDR Per Request
Addzdr: true in the provider object:
- Python
- TypeScript
- cURL
Account-Wide ZDR
Enforce ZDR for all requests made with an API key via the Dashboard or API:ZDR vs Data Collection
| Concept | Scope | Who controls it |
|---|---|---|
| ZDR | Provider-level: no storage by provider | ARouter routing policy |
| Data Collection | ARouter-level: what ARouter stores | ARouter privacy settings |
Caching and ZDR
ZDR does not prevent prompt caching. Caching is a performance optimization, not a form of data retention — cached prompts are stored ephemerally for latency reduction and are not accessible to other customers or used for training.ZDR Endpoints
UseGET /api/v1/endpoints/zdr to list all models and provider endpoints that support ZDR:
Related
- Provider Routing — Full
providerobject reference including ZDR enforcement - Data Collection — What ARouter collects and stores
- Provider Logging — How providers handle data retention
- Guardrails — Enforce ZDR at the API key level