A vendor that says "we do not train on your data" or "zero data retention available" is making a scoped promise, not a blanket one. The distinction that matters for an API test is between training use, runtime processing, and temporary retention for safety and operations. OpenAI documents that business data is not used for training by default, while also stating that business data may pass through automated content classifiers and that API retention defaults to temporary storage for abuse monitoring the enterprise privacy page and the data processing addendum. A practitioner write-up makes the same point more bluntly: the zero-retention option means the provider will not train on your data, which does not mean it never sees it, logs metadata about it, or keeps flagged content the dev.to analysis.
That gap is the whole reason to test. A retention statement in a DPA is a legal commitment; a canary test tells you whether the observed behavior is consistent with it. The two are not the same thing, and a procurement review that stops at the DPA has verified a document, not a system.
There is a second reason. The writer of that dev.to piece points out that a prompt may also traverse a CDN, third-party safety vendors, or an API wrapper before it ever reaches the model. If your architecture includes any of those, the provider's own retention promise covers only one hop of the chain. A canary test run against the provider's direct endpoint isolates that one hop, which is exactly what you want when the question is "does this provider delete on schedule."
The article's scope: this is a method for getting evidence about content retention at the provider endpoint, not a full security audit, not a training-data test (you cannot observe training use through an API), and not a substitute for a signed DPA. It answers one question well: does a string I sent through the API still exist anywhere I can see after the stated window.



