Skip to main content

Images, Documents and Video

A check is the same operation whatever the agent produced. Text goes to POST /v1/compliance/check as JSON. This page covers the other three artifact types, which share the report envelope, the decision vocabulary and the industry rules.

Documents

Send one PDF or .docx as a multipart document part. The text is extracted server-side and checked exactly as pasted text would be, including financial-services review scopes and content kinds.
Limits: 30 MB, 100 pages, 400,000 characters, one document per request, and a per-plan word cap. Scanned PDFs with no text layer are rejected with document_no_extractable_text; legacy .doc is not accepted. The multipart path is sync only. To inspect the text before checking it, call POST /v1/compliance/documents/extract, which is not billed.

Images

Endpoint: POST https://api.zebratruth.ai/v1/compliance/check-image Synchronous. Multipart form upload, no separate upload-URL step. Send jurisdictions and platforms as repeated fields.
Returns the same report envelope as a text check, with findings located by bbox rather than by sentence. Detects on-image claims, brand marks and stock-agency watermarks, restricted categories, content safety, provenance metadata, and your published brand rules and reference assets. Image checks do not run the financial-services specialists; sending reviewScopes or contentKind returns 400 review_scope_not_enabled. See the image guide.

Video

Video is asynchronous: request a signed upload URL, upload the bytes directly to managed storage, submit the check, then poll or receive a webhook. Findings carry stable evidence ids and a timelineLocation, so a reviewer can jump to the second where a spoken claim, on-screen text or visual signal appears. Financial-services review scopes and contentKind are accepted on the JSON submission. Up to 200 MB and 3 to 180 seconds. See the video guide and the video concept page.

Choosing between them

  • If the artifact is a video, check the video. Submitting frames to the image endpoint loses the transcript and the temporal context that spoken claims depend on.
  • If the artifact is a document, send the document rather than pasting its text; the persisted check then records the format and the extraction, which matters for the audit trail.
  • If an image carries the only claim, check the image; if the claim is in the surrounding copy, check the text and attach the image with content.imageUrls.

API reference

API Reference

Every endpoint, request body, response envelope and error code.