Developers

Verify files with one API call

Your workflows accept evidence that nobody can check by eye. One POST returns a structured verdict: the assessment, a confidence level, and a per-dimension breakdown your reviewers can stand behind. Most files complete in seconds.
Pixel Systems
$ curl -X POST "https://api.pixelsystems.com/v1/assess?wait=true" \
  -H "Authorization: Bearer ••••••••••••••••••••••••" \
  -F "file=@car_damage.png;type=image/png" \
  -F 'metadata={"case_id":"CLM-2026-7F3A2B1C"}'

HTTP/1.1 200 OK

{
  "jobId": "3f2504e0-4f89-11d3-9a0c-0305e82c3301",
  "status": "completed",
  "verdict": {
    "assessment": "ai_generated",
    "confidence": "high",
    "display": {
      "label": "AI Generated",
      "title": "AI Generated",
      "description": "AI Generated image detected"
    },
    "dimensions": [
      {
        "key": "ai_detection",
        "label": "AI generation",
        "assessment": "likely_ai",
        "score": 0.97,
        "confidence": "high"
      },
      {
        "key": "manipulation_detection",
        "label": "Manipulation",
        "assessment": "likely_manipulated",
        "score": 0.68,
        "confidence": "medium"
      }
    ]
  },
  "metadata": {
    "case_id": "CLM-2026-7F3A2B1C"
  },
  "createdAt": "2026-02-11T09:41:00Z",
  "completedAt": "2026-02-11T09:41:07Z"
}

How it works

Send a file and get a verdict back, usually within the same request.

A verdict, not a score

Every file comes back with a clear assessment and a confidence level, so your workflow has something to act on rather than a number to interpret.

Results that hold up

Each verdict carries the signals behind it in plain language, so the people reviewing a case can see why, and defend the call later.

Built to route

Structured output your systems can branch on. Route verdicts straight into case queues, dashboards, or automated decisions.

Integration paths

The API is REST. Call it directly from your backend in any language, or generate a client from the OpenAPI spec. Every path returns the same result format.

REST API

Call the API from any backend language with an API key. Same pipeline and response format everywhere.
Get started

OpenAPI spec

Generate a typed client in any language from the spec we serve, and regenerate it when the API moves.
Read the spec

SDKs on the way

Official libraries are on the way. Until they land, the spec generates a client for most languages.
Check SDK status

Results in one call

POST /v1/assess waits up to 30 seconds for the verdict. If a job runs longer than that, poll for it.
Assess reference

Safe retries

Send an Idempotency-Key and a repeat returns the original job. RateLimit headers say when to back off.
Rate limits and retries

EU processing by default

Files are processed and stored in the EU region. Retention terms, including zero, are agreed per customer.
How we handle data

Frequently asked questions

Ready to integrate?

The docs carry the full reference: endpoints, error codes, rate limits, and the response shape. Contact sales for access and production credentials.
Pixel Systems - Verify files with one API call