Two endpoints — POST /v2/image/verify and POST /v2/video/verify — take a generated visual and verify whether it carries Bria's provenance markings. Both are public: no API Token required, so you can verify generated visuals from anywhere, including from an end user's browser.
Use it to confirm the origin of media in your own pipeline, let your users check a file they received, or produce an audit record of AI-generated content.
Each endpoint runs two independent checks and returns a single verified flag: true if either check confirms Bria origin.
- C2PA manifest: Reads the media's embedded C2PA manifest, if there is one, and checks whether it was signed by Bria's trust anchor. Returned as
validation_state:Trusted— Signed by Bria. This is the only value that setsis_trustedtotrue.Valid— The signature is intact, but the signer isn't Bria.Invalid— The signature is broken, or the media was changed after signing.
- Invisible watermark: Decodes the invisible watermark, if there is one, and checks whether it matches Bria's. Returned as
invisible_watermark_detected(true/false). This check always runs for video. For images, it runs on all supported formats except GIF and WEBP — for those, the field is omitted from the response rather than returned asfalse.
Because the two checks are independent, media that lost its C2PA manifest along the way (a re-upload, a screenshot, a platform that strips metadata) can still be verified through the watermark.
Article 50 of the EU AI Act requires AI-generated or AI-manipulated content to carry a machine-readable marking of its origin. Bria applies both a C2PA manifest and an invisible watermark to the media it generates, and this API is how you read those markings back — to verify media you receive, or to evidence the marking on media you've generated.
See the Visual Verification API Reference for the full request and response contract.