Car Inspection API

Upload vehicle media, get AI-scored results per item, and generate tamper-proof inspection certificates.

Resume an Existing Inspection

1. List Inspection Companies

Fetch all active inspection companies. Use the company ID when creating an inspection.

GET /api/v1/predict/inspection/companies

Select a company to use in Step 2:

Response
// Click "Fetch Companies" to see response

1b. SmartCar Vehicle Lookup (optional)

Look up vehicles connected via SmartCar for an email. Selecting a vehicle pre-fills the inspection form and auto-verifies VIN & odometer.

GET /api/v1/vin-lookup?email={email}
Response
// Enter an email and click Lookup

2. Create Inspection

Initialise a new inspection session with vehicle info and company. Returns an inspection_ref used for all subsequent calls.

POST /api/v1/predict/inspection
Used to look up all inspections and SmartCar connections for this person.
Select a company in Step 1 to auto-fill this.
When set to Manual, uploads are stored and a mechanic reviews each item.
Response
// Fill in vehicle info and click Create

3. Upload Media Items

Upload each item individually using multipart/form-data with a file field. Each upload triggers a background AI analysis. Items update to Analyzed within ~30s.

POST /api/v1/predict/inspection/{ref}/media/{item_key}
All valid item_key values
Accordion item_key Label Accepts
Car Verification vin VIN # IMAGE
Car Verification odometer Odometer IMAGE
Interior horn Horn VIDEO
Interior interior_driver_side Interior Driver Side IMAGE
Interior driver_seat_adjustment Driver Seat Adjustment IMAGE
Interior interior_passenger_side Interior Passenger Side IMAGE
Interior passenger_seat_adjustment Passenger Seat Adjustment IMAGE
Interior interior_backseat Interior Backseat IMAGE
Exterior exterior_left Exterior Left IMAGE
Exterior exterior_right Exterior Right IMAGE
Exterior exterior_front Exterior Front VIDEO
Exterior exterior_rear Exterior Rear VIDEO
Tires tire_left_front_image Left Front Tire IMAGE
Tires tire_left_rear_image Left Rear Tire IMAGE
Tires tire_right_front_image Right Front Tire IMAGE
Tires tire_right_rear_image Right Rear Tire IMAGE
Tires tire_left_front_video Left Front Tire (Video) VIDEO
Tires tire_right_front_video Right Front Tire (Video) VIDEO
Send file as multipart/form-data with field name file. Example: POST /api/v1/predict/inspection/INS-XXXX/media/vin
No inspection created yet — complete Step 2 first.
0 / 18 items uploaded
1 Car Verification Items 0/2

VIN #

IMAGE

Odometer

IMAGE
2 Interior Items 0/6

Horn

VIDEO

Interior Driver Side

IMAGE

Driver Seat Adjustment

IMAGE

Interior Passenger Side

IMAGE

Passenger Seat Adjustment

IMAGE

Interior Backseat

IMAGE
3 Exterior Items 0/4

Exterior Left

IMAGE

Exterior Right

IMAGE

Exterior Front

VIDEO

Exterior Rear

VIDEO
4 Tires 0/6

Left Front Tire

IMAGE

Left Rear Tire

IMAGE

Right Front Tire

IMAGE

Right Rear Tire

IMAGE

Left Front Tire (Video)

VIDEO

Right Front Tire (Video)

VIDEO
Last Upload Response
// Upload an item to see the response

4. Check Progress

Returns all items with their AI analysis status. Poll this after uploads to see scores appear.

GET /api/v1/predict/inspection/{ref}/media
Response
// Click to check current progress

5. Submit Inspection

Finalise the inspection. All 18 items must be uploaded. Returns an error listing any missing items.

POST /api/v1/predict/inspection/{ref}/submit
Response
// Submit once all items are uploaded

6. Verify Certificate

Anyone can verify an inspection certificate hash — no API key required. Returns the inspection details and confirms the document has not been tampered with.

GET /api/v1/predict/inspection/verify/{hash}
Found at the bottom of the inspection PDF report.
Response
// Paste a hash and click Verify

Lookup by Certificate Code

Retrieve an inspection using the 6-character code printed on the certificate. No API key required — publicly accessible.

GET /api/v1/predict/inspection/code/{code}
6-character code printed on the inspection certificate.
Response
// Enter a code and click Lookup

7. Inspections by Email

Retrieve all inspections linked to an email address, regardless of status. Requires API key.

GET /api/v1/predict/inspection/by-email?email={email}
Response
// Enter an email and click Fetch