Data retention
How Inference.net handles request data, how Zero Data Retention works, how it affects the asynchronous APIs, and what ad-supported models share.
Inference.net is built to support production workloads without treating request data casually.
Core principles
- Request data is not used for model training by default.
- Secrets and similar sensitive values are stripped where possible.
- Platform data is encrypted in transit and at rest.
- Retention should match the operational need of the workflow.
Zero Data Retention
New teams start with the Zero Data Retention (ZDR) setting on, so Inference.net does not retain request and response content. With ZDR on, message contents, tool and function schemas, custom metadata, and error details are purged after processing; model, usage, and timing metadata are retained.
Change the setting in team settings in the dashboard. Turn it off to keep inference results or to use the Asynchronous and Batch APIs. See the Zero Data Retention Policy for what ZDR covers.
Retention and asynchronous inference
The Asynchronous and
Batch APIs store requests and results until they are
delivered, so they are unavailable while ZDR is on. Teams with ZDR on receive a
403 Forbidden on /v1/slow, /v1/batches, and /v1/files upload requests,
and should use the synchronous /v1 endpoints or turn ZDR off in
team settings.
Ad-supported models
Ad-supported models (for example moonshotai/kimi-k3.1-pro-with-ads) can include
sponsored content from our advertising partner, Gravity. When you call an
ad-supported model, Inference.net sends Gravity, for a sample of requests:
- the full request: chat messages (images included) and parameters such as tools and temperature;
- the full response the model generated, including any reasoning and tool calls;
- a SHA-256 hash of the user's email address (never the address itself);
- the IP address the request came from;
- the end-user id you send in the request's
safety_identifieroruserfield, if any; - the conversation id you send in the
x-session-idheader or the request'ssession_idfield, if any; - the request's token usage, finish reason and cost (the amount billed, the list price, and the difference).
This happens whether or not ZDR is on for your team: it is a term of using an ad-supported model. To keep all request content under ZDR, call the standard model instead. Ad-supported models also have spend limits.
Need a specific retention policy?
If you need a specific policy, a data processing agreement, or help mapping Inference.net into your internal compliance requirements, contact our team.