Answers · AI evidence
A customer disputes what our AI app told them weeks ago. Can we get the original response back from OpenAI, Anthropic or Google?
Last updated
TL;DR: Usually not, and never for long. The model providers keep copies of API traffic for their own reasons and on their own clocks, not as a records service for you. OpenAI keeps abuse-monitoring logs for up to 30 days by default, and the Responses API stores a response for at least 30 days so you can fetch it by its id, but only if it was stored (the default unless store is false or your organization has Zero Data Retention). Chat Completions keeps nothing you can fetch unless the request set store to true. Anthropic deletes API inputs and outputs within 30 days by default and has no endpoint to fetch an ordinary past message; Message Batches results can be downloaded for 29 days after the batch was created. Google's Gemini API keeps project logs for up to 55 days where logging is on (now the default for new paid projects since October 26, 2026), and the owner can shorten that to 7, 14 or 28 days. So by the time most disputes arrive, the provider's copy is gone or was never kept. The record that settles it is the one you saved when the answer went out: the exact request, the raw response, the provider's ids and a hash of each, ideally with a signed, timestamped receipt someone outside your company can check.
What should I check, step by step?
1. If the dispute is fresh, act today: note the response id and the provider's request id from your logs and check whether the provider still holds a copy (OpenAI Responses within 30 days if stored; Anthropic batch results within 29 days of batch creation; Gemini project logs within your retention window).
- Retrieve what you can and save it with the date you retrieved it. A copy fetched from the provider's API is still a copy you made; keep the raw JSON, not a screenshot.
- Don't count on abuse-monitoring logs. OpenAI and Google describe them as logs for enforcing their own usage policies, and neither describes a way for you to retrieve them, and OpenAI and Anthropic both say they may keep data longer only where the law or their safety work requires it.
- Check your own settings before you rely on any of this: Zero Data Retention (OpenAI), store set to false, a shortened Gemini log window or Gemini logging turned off all mean the provider kept nothing you can retrieve.
- Going forward, log every model call on your side: the exact request (system prompt, retrieved context, tool results), the raw response, the model value the provider returned, settings, the response id and the provider's request id.
- Hash each saved request and response (SHA-256) when the answer is sent, and keep the originals for as long as complaints or claims can arrive, which is usually years, not weeks.
- Get the hash recorded outside your own systems at send time, so a customer or a court doesn't have to take your word that the log wasn't edited after the complaint.
- If the dispute could become a legal claim, preserve everything as it is and talk to a lawyer before changing prompts, models or logs. Not legal advice.
How long do OpenAI, Anthropic and Google keep API prompts and responses?
OpenAI: abuse-monitoring logs for up to 30 days by default on Chat Completions and Responses. The Responses API also stores the response as application state by default, or when store is true, for at least 30 days, so you can fetch it by its response id in that window. Zero Data Retention forces store to false. Conversations and Assistants objects stay until you delete them, so if your app uses them, check there first.
- Anthropic: for API users, inputs and outputs are deleted within 30 days of receipt or generation by default, with exceptions for features you control (such as the Files API), zero-retention agreements, usage-policy enforcement (flagged inputs and outputs up to 2 years) and the law. Message Batches results are downloadable for 29 days after the batch was created.
- Google Gemini API: logs are kept in your Cloud project for billing-enabled projects where logging is on, for a default maximum of 55 days, or 7, 14 or 28 days if the owner shortens it. Logging is on by default for the Interactions API and for Generate Content in projects created on or after October 26, 2026. Logs saved into a dataset have no set retention period. These project logs are separate from Google's abuse-monitoring logs.
Why can't I rely on the AI provider's copy of a response in a dispute?
Timing: customer complaints, chargebacks, regulator questions and lawsuits often arrive months after the answer. The default windows above run roughly 30 to 55 days.
- Control: the windows, exceptions and features are set by the provider's terms and can change; several of the pages above changed in 2026. A record you depend on shouldn't sit under someone else's retention policy.
- Coverage: the provider sees only the model call. What the customer saw may have passed through retrieval, templates, post-processing, translation or a cache after the model answered, and only your logs show those steps.
What should I keep myself to prove what an AI model answered?
Per answer: the exact request, the raw response, the model value returned, settings, the response id and the provider's request id, plus the version of the prompt template and any documents retrieved.
- A SHA-256 of the saved request and response, recorded somewhere you can't edit at the moment the answer goes out. Rightshold's record_ai_run takes those hashes and returns a signed receipt with Rightshold's own timestamp, so later anyone can check the disputed text against it with verify_ai_run, for free.
- The originals. A receipt proves a copy matches; it can't give the text back, so keep the request and response in your own storage for the full period claims can arrive.
How do I ask Rightshold about this (free, no key)?
Add the MCP server https://www.rightshold.com/mcp to Claude, Cursor, ChatGPT, Grok or VS Code, then ask: “Record a signed receipt for this model answer as it goes out: the model, hashes of the saved request and raw response, the provider's response and request ids, and when it ran.”
{
"tool": "record_ai_run",
"arguments": {
"model": "<model value from the response>",
"provider": "anthropic",
"prompt_sha256": "<sha256 of the saved request JSON>",
"output_sha256": "<sha256 of the saved response JSON>",
"params": {
"response_id": "msg_<id from the response>",
"request_id": "req_<from the request-id header>",
"template_commit": "<git commit of the prompt template>"
},
"ran_at": "2026-11-09T22:00:00Z"
}
}- Needs an API key. Send hashes only if you like; if you send text, Rightshold stores only its SHA-256. The receipt is signed and goes on Rightshold's append-only ledger with Rightshold's own issued_at time.
- verify_ai_run is free and needs no key: send the receipt id, or the receipt and signature plus the disputed text, to check whether it matches the recorded hash.
- Record at send time, not after a complaint. A receipt made weeks later shows only that you had that text when you recorded it.
- In recorded mode the receipt shows what you recorded, not that the provider served that model, and no receipt shows the answer was true.
Rightshold doesn't connect to OpenAI, Anthropic, Google or your logs, and it can't retrieve anything a provider has deleted. It signs and timestamps the hashes you send and lets anyone check text against them later. Provider retention terms change; check the linked pages for your account and contract. Not legal advice.
What are the sources?
- OpenAI: Data controls in the OpenAI platform (abuse monitoring, application state, Zero Data Retention)
- Anthropic Privacy Center: How long do you store my organization's data?
- Anthropic: Batch processing (results available for 29 days after creation)
- Google AI Studio: Data logging and sharing (Gemini API logs, 55-day default, October 26, 2026 default change)
- Google AI Studio: Zero data retention in the Gemini Developer API (abuse-monitoring logs, grounding storage)
- Verified AI Runs on Rightshold
Related
- How to prove what an AI model said at a specific time
- Investigating a complaint that your AI chatbot made something up
- How to prove which model version, prompt and settings produced an AI output
- Verified AI Runs
Not legal advice. JSON · Markdown · All answers
Get a free API key in one call
No card and no email needed. 100 free credits; the license and policy checks stay free without a key.
curl -s -X POST https://www.rightshold.com/v1/accounts/signup -H "Content-Type: application/json" -d '{"accept_terms":true}'
export RIGHTSHOLD_API_KEY=rs_... # the api_key from the reply (shown once)
curl -s https://www.rightshold.com/v1/licenses/check -H "Authorization: Bearer $RIGHTSHOLD_API_KEY" \
-H "Content-Type: application/json" -d '{"license":"MIT","intended_use":{"commercial_use":true}}'
