See the prompt and the response of a request, when you turn on Log content
The Log content Directive now works. Turn it on for a team, project, environment or key, and each request's page in Logs gets a Content section with the request body as sent and the response, or a stream's output, for 7 or 30 days. Off by default, encrypted at rest, and readable only by owners and admins.
Requests on chat completions, messages and responses keep their body and their response: the JSON returned, or for a stream the text, tool calls, reasoning and usage assembled from the events relayed to you, without delaying the stream. Embeddings keep the request and the response without its vectors. Headers, and so API keys, are never kept, and each body is kept up to 256 KB.
The new data.contentRetentionDays sets 7 days (the default) or 30; the shortest any level sets applies. Turning Log content off at a level deletes what was stored under it when you publish, and expired content is deleted within minutes.
Zero data retention wins: a level can't turn on both, and where Require ZDR applies from any level nothing is stored. Opening content is recorded in the audit log, members see only that it exists, and it is never part of receipts or usage export.
More in Directives: Log content.