Fraud Detection API

Real-Time Fraud Detection API

One call returns fraud flags, a risk score and live alerts for any VIN or license plate.

300

req/min

10K

req/day

20

concurrent

99.9%

uptime

Endpoints

API Endpoints

POST/v1/scans

Run a fraud scan on a VIN or plate and return every flag we catch. Body takes a vin or plate plus a country.

# Example request

curl -X POSThttps://api.vindetector.com/v1/scans \

-H "Authorization: Bearer YOUR_API_KEY" \

-H "X-Detector-Key: YOUR_DETECTOR_KEY"\

-d '{"vin": "WBA3A5G59DNP26082", "country": "FR"}'

GET/v1/scans/
POST/v1/scans/batch
GET/v1/vehicles//risk
GET/v1/vehicles//flags
Schema

Response Schema

Every scan returns a structured JSON object with the following fraud-detection fields.

scan_idstringUnique scan identifier, prefixed scn_
vinstringVehicle Identification Number that was scanned
scanned_atstringISO 8601 timestamp of when the scan ran
risk_scoreintegerAggregated fraud risk from 0 (clean) to 100 (high risk)
risk_levelstringRisk band: low, medium, high or critical
fraud_flagsarrayFraud flags caught, such as mileage_rollback or salvage_title
checksobjectPer-check results: rollback_detected, stolen, hidden_damage, title
recorded_mileageobjectLast recorded odometer with value, unit and consistency
sources_checkedintegerNumber of data sources cross-checked for this scan
metaobjectRequest context such as the country that was scanned
response.json

{

"scan_id": "scn_9d4f12",

"vin": "WBA3A5G59DNP26082",

"scanned_at": "2026-03-12T10:04:00Z",

"risk_score": 78,

"risk_level": "high",

"fraud_flags": ["mileage_rollback", "salvage_title"],

"checks": {

"rollback_detected": true,

"stolen": false,

"hidden_damage": true,

"title": "salvage"

},

"recorded_mileage": {

"value": 142350,

"unit": "km",

"consistent": false

},

"sources_checked": 8200,

"meta": { "country": "FR" }

}

Reference

Error Codes

400

Bad Request

Invalid VIN format or missing required fields

401

Unauthorized

Missing or invalid API key

403

Forbidden

Your plan does not include fraud-detection access

404

Not Found

No records found to score this VIN for fraud

429

Too Many Requests

Rate limit exceeded, retry after cooldown

500

Server Error

Internal error, contact support if persistent

Limits

Rate Limiting

Per minute

300 requests

Per day

10,000 requests

Concurrent

20 connections

Rate limit headers ship with every response: X-Detector-RateLimit-Remaining and X-Detector-RateLimit-Reset.

Ready to catch fraud at scale?

Get your API key and start scoring vehicles for fraud in minutes. Sandbox environment included.

Free sandbox. No commitment required.