Auto Inspect
For insurers

The Auto Inspect API

Read a vehicle's history from every business that recorded it, send customers a one-time pre-inception photo link, and write accident, repair and claim-closed events — from your own claims or underwriting system. Part of the insurer plan (R4,999 a month, VAT included); AI usage is billed separately.

Base URL https://autoinspect.co.za/api/autoinspect/v1 · OpenAPI 3 openapi.json

Keys, scopes and limits

Create keys in the insurer portal (Sign in → Insurer → API keys). A key is shown once and stored scrambled; revoke it there at any time. Send it on every call:

Authorization: Bearer aik_…
ScopeAllows
readlookups, your pre-inception reports, creating pre-inception links, reading events you wrote
write-claimswriting accident / repair / claim_closed events

Each key has a limit per minute (default 30) and per 24 hours (default 1,000); lookups also count towards your business's daily lookup allowance. Over a limit → 429 with Retry-After. Every call — refused ones too — is counted and shown in your portal's usage view.

StatusMeaning
401no key, unknown key or revoked key
403no active insurer plan, or the key lacks the scope
400validation (errors are { "error": "…", "code": "…" })
404not found, or not yours
429rate limit / daily quota

GET/vehicles/lookup?vin=…|reg=…&purpose=…

Exact match only — the full VIN or the full registration, never a partial or wildcard search. purpose is required: insurance, claim, repair, pre_purchase, trade_in, rental, inspection or other. Returns the vehicle, discrepancy flags, odometer readings and the history from every writer, with vehicle photos as links valid for one hour. Owner identity is never on the record; rental hand-over reports are never shared.

curl -H "Authorization: Bearer $KEY" \
  "https://autoinspect.co.za/api/autoinspect/v1/vehicles/lookup?vin=AHTKB3FE60A024317&purpose=claim"

{ "found": true, "query": "AHTKB3FE60A024317",
  "vehicle": { "id": "…", "make": "TOYOTA", "model": "FORTUNER", "year": 2019, "registration_number": "…", "vin": null, "vin_masked": "•••••••••••024317" },
  "flags": [ { "occurred_at": "…", "summary": "Odometer 61 200 km is lower than …", "severity": "high" } ],
  "odometer": [ { "occurred_at": "…", "km": 61200, "kind": "odometer", "business_name": "…" } ],
  "events": [ { "id": "…", "kind": "roadworthy", "title": "Roadworthy test", "occurred_at": "…", "summary": "…", "business_name": "…",
                "details": { "result": "pass" }, "photos": ["https://…"], "verify_url": "https://autoinspect.co.za/v/…" } ] }

POST/pre-inception-links

A one-time link for your customer (valid 7 days). They open it on a phone — no app, no login — and take the guided photos: licence disc, VIN plate, odometer, four corners and damage close-ups. The vehicle details and possible damage are read from the photos (AI usage on your account); your staff confirm them in the portal and sign off. The report is private to you: nothing goes on the shared vehicle record. The customer sees only "thank you".

{ "customer_email": "client@example.com", "policy_ref": "Q-1029", "vehicle_hint": "2019 Toyota Hilux", "send": true }
→ 201 { "id": "…", "url": "https://autoinspect.co.za/p/…", "expires_at": "…", "sent_status": "sent" }

GET/inspections/{id}

One of your pre-inception reports: status (waiting_for_photos, awaiting_review, signed_off), vehicle details, photo links, readings and possible damage with your decisions.

POST/vehicles/{vin}/events scope write-claims

Write an event on a vehicle that is on the record (exact VIN), as your business. Only these fields are accepted — anything else (names, ID numbers, contact details, free notes) is refused with 400:

FieldRule
kindaccident · repair · claim_closed
dateYYYY-MM-DD
categorycollision · hail · windscreen · theft_recovered · fire · flood · vandalism · animal · mechanical · other
cost_bandoptional: under_5k · 5k_20k · 20k_50k · 50k_100k · 100k_250k · over_250k · write_off
repairer_nameoptional, the repairer business (max 120 characters, no contact details)
descriptionoptional, max 200 characters, no personal data
{ "kind": "repair", "date": "2026-10-20", "category": "collision", "cost_band": "20k_50k", "repairer_name": "Example Panelbeaters" }
→ 201 { "event_id": "…", "kind": "repair", "verify_url": "https://autoinspect.co.za/v/…", "discrepancies": [] }

GET/events/{id}

An event your business wrote (other businesses' events are read through the lookup).

Questions or a higher limit: support@getkonnekted.com.