For the complete documentation index, see llms.txt. Markdown versions of documentation pages are available by appending .md to the page URL.
Primary navigation

Content provenance

Check images and audio for content provenance signals.

Use the Content Provenance API to check whether an image or audio file contains supported OpenAI provenance signals. Send a file to POST /v1/content_provenance_checks to receive the completed verification results in the same response. Use these signals in content review, fact-checking, labeling, and trust and safety workflows.

To check a file in your browser, use the web tool at openai.com/verify.

For request parameters and response schemas, see the Content provenance API reference.

A not_detected result means the tool didn’t find supported signals in the uploaded file. Content may still have been generated by OpenAI if its metadata was stripped or shows evidence of tampering, its watermark was degraded, it came from a legacy generation model, or it was created before provenance signals were available. The tool doesn’t currently detect content generated by another company’s AI model, so a not_detected result doesn’t rule that out either.

What content provenance checks

Content provenance checks supported files for the following signals:

SignalApplies toWhat it checks
C2PA Content CredentialsImagesSigned metadata with issuer and AI-use details
SynthIDImages and audioA watermark embedded directly in supported media

C2PA metadata provides more context about a file’s origin. Editing, converting, or sharing a file can remove its metadata. A SynthID watermark is part of the image or audio itself and may survive some transformations.

The API checks for supported OpenAI signals. It isn’t a general-purpose AI detector and doesn’t identify content generated by every AI system. Visible watermarks and labels are separate from the provenance signals checked by the API.

Verify a file

Send an image or audio file as the file field with the OpenAI SDK. The SDK builds the multipart request and reads your API key from the OPENAI_API_KEY environment variable:

Verify an image