Home / Integration

Integration overview

Send media, get a binary verdict with a per-layer trace. One synchronous call, no polling and no webhooks to configure. This page covers the shape of the integration. Full documentation comes with pilot access.

01

Analyze media

POST /api/analyze

A single image or video, sent as multipart form data. The response is synchronous and returns once every layer has reported. Requests are authenticated with a key issued during onboarding.

Request
POST /api/analyze
Content-Type: multipart/form-data

file=@statement_photo.jpg

Video can also be submitted as three extracted frames instead of the whole file, which cuts the payload from tens of megabytes to a few hundred kilobytes. Public links can be submitted in place of a file.

02

Response schema

The verdict is binary by design. Confidence is a presentation value and never contradicts the label, so a figure below 0.50 always accompanies Real Camera and one above it always accompanies AI-Generated.

200 OK
{
  "verdict":     "AI-Generated",
  "confidence":  0.97,
  "generator":   "Sora 2",
  "summary":     "Detected as AI-generated.",
  "layers": {
    "provenance":  "active",
    "neural":      "ai",
    "fingerprint": "ai",
    "metadata":    "suspicious",
    "chrominance": "normal"
  }
}
FieldNotes
verdictExactly Real Camera or AI-Generated. There is no third value.
confidence0 to 1, always consistent with the label.
generatorThe named engine where attribution is available.
summaryOne sentence, suitable for an analyst-facing screen.
layersPer-layer trace, so a reviewer sees the reasoning rather than a single score.
Why a layer can read “suspicious”

A single detector spiking on its own does not move a verdict. That value exists so your analysts can see a signal was raised and deliberately not acted on.

03

Limits

Max direct upload32 MB per request
Input formatsJPEG, PNG, WebP, MP4, MOV, public URL
Video sampling3 frames at fixed positions, so results are reproducible
BatchMultiple files per request, paced internally to stay inside upstream limits
ScalingHorizontal autoscale, stateless workers

04

Data handling

Media retentionNone. Files are deleted as the verdict returns
Audit recordHeld by you. We keep no copy
Data residencyRegion-pinned container deployment
Deployment modelsManaged API, private tenancy on request
Nothing is stored

There is no retrieval endpoint for past scans, because there is nothing to retrieve. If you need an audit trail, persist the response on your side at the moment you receive it.

Full documentation

The complete reference comes with access.

Endpoint-by-endpoint documentation, authentication, error handling and a sandbox environment are provided during onboarding, alongside an evaluation run against your own media.

Request full documentation