AI Damage Inspection API Quickstart: From Photo to Grade in 5 Minutes

This is a hands-on walkthrough for developers: from zero to a graded vehicle-damage verdict, an exported condition report, and a before/after delta — using the VerifyAI API. If you've read what a photo verification API is and want to actually wire one up, start here.

A note on positioning: VerifyAI leads with parking compliance, and vehicle damage inspection is a secondary capability — but the API surface is the same, so this walkthrough applies to any policy.

Step 1 — Get an API key

Create a sandbox account and grab a key. The sandbox comes with $5 in credit and no credit card — at about $0.008 per verification, that's enough for hundreds of test calls. Once you're in, your key lives in the dashboard. Export it so the examples below work:

bash
export VERIFY_API_KEY="sk_sandbox_..."

Step 2 — Send a photo to the verify endpoint

A damage inspection is one POST to /api/v1/verify with two things: the image (base64 data URL or a multipart upload) and a reference to the damage policy that defines what counts as damage. Here's a base64 example:

bash
curl https://verify.switchlabs.dev/api/v1/verify \
  -H "Authorization: Bearer $VERIFY_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "policy": "vehicle-damage-inspection-policy",
    "image": "data:image/jpeg;base64,/9j/4AAQSkZJRg..."
  }'

The policy is policy-as-code — an editable ruleset of criteria like "no body damage," "no broken glass," "no missing parts," and "vehicle clearly in frame," each with a severity. You can start from the built-in damage policy and tune it to your SOP. The full request/response contract is in the verify endpoint reference.

Step 3 — Read the structured response

You get back a machine-readable verdict you can branch on — no human review step:

json
{
  "category": "damage_detected",
  "compliant": false,
  "criteria": [
    { "id": "no_body_damage", "passed": false, "reason": "Dent on rear driver door" },
    { "id": "no_broken_glass", "passed": true },
    { "id": "no_missing_parts", "passed": true },
    { "id": "vehicle_in_frame", "passed": true }
  ],
  "grade": "K3",
  "latency_ms": 940
}

The category is the overall outcome, criteria is the per-rule breakdown with reasons, and grade is severity on the AIAG / K1–K5 scale. Your code reads compliant (or the failed criteria) and decides what to do — flag the vehicle, open a damage record, or pass it through. If you're new to the grades, the AIAG & K1–K5 explainer and the glossary entry break them down.

Step 4 — Compute a before/after delta for returns

The single most persuasive piece of a damage dispute is showing what changed during a rental. Capture a baseline at check-out and a second photo at return, and request a before/after delta — the API isolates new damage from pre-existing wear, so you're not arguing about a scratch that was always there. That delta is what turns a he-said-she-said into a documented decision.

Step 5 — Export a PDF condition report

For a representment or a customer-facing record, package the baseline, the delta, and the grade into a clean document. A single call produces an exportable PDF condition report you can attach to a chargeback response or hand to a customer — no template work on your side.

Capture without slowing the counter

You don't have to staff the inspection. Self-inspection links let the renter photograph the vehicle from their own phone, producing a customer-acknowledged baseline — see self-inspection links for how that flow works alongside the API.

Next steps

That's the full loop: key → verify → read grade → delta → PDF. From here:

On compliance claims

VerifyAI is GDPR-aligned, with a SOC 2 audit in progress — not yet SOC 2 certified. See security and GDPR for the current status.

Get your API key and grade your first photo free — $5 sandbox credit, no card required.

Get in Touch

Questions about pricing, integrations, or custom deployments? We'd love to hear from you.