Resource / 594
healthyUnnamed resource.
Before your agent buys or appraises a vehicle: one consolidated report from a VIN — decode, candidate recall campaigns, type-approval CO2, the French registration tax it would cost and, from declared characteristics, Crit'Air / low-emission-zone status — from official NHTSA vPIC, RappelConso, EU 2019/631 and French tax sources, each block with its own provenance and honest coverage
| State | Network | Scheme | Atomic amount | Asset | payTo / untrusted |
|---|---|---|---|---|---|
| active | eip155:8453 | exact | 10000 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | 0x4465825B0ac713aA2Fa07Ea29023020804A128ee |
| active | eip155:8453 | exact | 1000 | 0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913 | 0x4465825B0ac713aA2Fa07Ea29023020804A128ee |
| active | solana:5eykt4usfv8p8njdtrepy1vzqkqzkvdp | exact | 10000 | EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v | Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6 |
All advertised payment options are stored. Base (`eip155:8453`) is the operational network for ranking and canaries; non-Base options remain visible for transparency.
healthy 2026-08-13 02:15:01 UTC GET · HTTP 402 · 169ms · accepts 3 · base 2 ok
Accepts snapshot
[
{
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"assetTransferMethod": null,
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"paymentFlow": null,
"raw": {
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"max_timeout_seconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"pay_to": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
},
"scheme": "exact"
},
{
"amount": "10000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"assetTransferMethod": null,
"extra": {
"domain": "invoket.com",
"feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb"
},
"maxTimeoutSeconds": 60,
"network": "solana:5eykt4usfv8p8njdtrepy1vzqkqzkvdp",
"payTo": "Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6",
"paymentFlow": null,
"raw": {
"amount": "10000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"domain": "invoket.com",
"feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb"
},
"maxTimeoutSeconds": 60,
"max_timeout_seconds": 60,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6",
"pay_to": "Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6",
"scheme": "exact"
},
"scheme": "exact"
},
{
"amount": "1000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"assetTransferMethod": null,
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"paymentFlow": null,
"raw": {
"amount": "1000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"max_timeout_seconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"pay_to": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
},
"scheme": "exact"
}
]
PaymentRequired raw
{
"accepts": [
{
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"domain": "invoket.com",
"feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb"
},
"maxTimeoutSeconds": 60,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6",
"scheme": "exact"
},
{
"amount": "1000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
}
],
"error": "PAYMENT-SIGNATURE header is required",
"extensions": {
"bazaar": {
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"fuel": {
"description": "Optional declared fuel/powertrain (electric, hydrogen, gas (gpl/gnv), plug_in_hybrid, petrol, diesel, petrol_hybrid, diesel_hybrid), rules of /vehicle/critair: a thermal vehicle also needs 'euro_norm' (pre_euro, euro1, euro2, euro3, euro4, euro5, euro6) or 'first_registration' (YYYY-MM-DD), an electric one needs neither. Nothing usable, or an implausible date, leaves the Crit'Air block missing with its reason — it never fails the report",
"type": "string"
},
"vin": {
"description": "17-character Vehicle Identification Number (VIN alphabet, excludes I/O/Q). Required: it is the report's mandatory base. Malformed is a 400; a well-formed VIN whose manufacturer prefix (WMI) is unknown is a 404 (unbilled) — without the decode base there is no report",
"type": "string"
}
},
"required": [
"vin"
],
"type": "object"
},
"schema": {
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"resource": {
"description": "Before your agent buys or appraises a vehicle: one consolidated report from a VIN — decode, candidate recall campaigns, type-approval CO2, the French registration tax it would cost and, from declared characteristics, Crit'Air / low-emission-zone status — from official NHTSA vPIC, RappelConso, EU 2019/631 and French tax sources, each block with its own provenance and honest coverage",
"mimeType": "application/json",
"url": "https://api.invoket.com/vehicle/report"
},
"x402Version": 2
}
Response headers
{
"connection": "keep-alive",
"content-length": "14230",
"content-security-policy": "default-src 'none'; frame-ancestors 'none'",
"content-type": "application/json",
"date": "Thu, 13 Aug 2026 02:15:01 GMT",
"payment-required": "eyJ4NDAyVmVyc2lvbiI6MiwiZXJyb3IiOiJQQVlNRU5ULVNJR05BVFVSRSBoZWFkZXIgaXMgcmVxdWlyZWQiLCJyZXNvdXJjZSI6eyJ1cmwiOiJodHRwczovL2FwaS5pbnZva2V0LmNvbS92ZWhpY2xlL3JlcG9ydCIsImRlc2NyaXB0aW9uIjoiQmVmb3JlIHlvdXIgYWdlbnQgYnV5cyBvciBhcHByYWlzZXMgYSB2ZWhpY2xlOiBvbmUgY29uc29saWRhdGVkIHJlcG9ydCBmcm9tIGEgVklOIOKAlCBkZWNvZGUsIGNhbmRpZGF0ZSByZWNhbGwgY2FtcGFpZ25zLCB0eXBlLWFwcHJvdmFsIENPMiwgdGhlIEZyZW5jaCByZWdpc3RyYXRpb24gdGF4IGl0IHdvdWxkIGNvc3QgYW5kLCBmcm9tIGRlY2xhcmVkIGNoYXJhY3RlcmlzdGljcywgQ3JpdCdBaXIgLyBsb3ctZW1pc3Npb24tem9uZSBzdGF0dXMg4oCUIGZyb20gb2ZmaWNpYWwgTkhUU0EgdlBJQywgUmFwcGVsQ29uc28sIEVVIDIwMTkvNjMxIGFuZCBGcmVuY2ggdGF4IHNvdXJjZXMsIGVhY2ggYmxvY2sgd2l0aCBpdHMgb3duIHByb3ZlbmFuY2UgYW5kIGhvbmVzdCBjb3ZlcmFnZSIsIm1pbWVUeXBlIjoiYXBwbGljYXRpb24vanNvbiJ9LCJhY2NlcHRzIjpbeyJzY2hlbWUiOiJleGFjdCIsIm5ldHdvcmsiOiJlaXAxNTU6ODQ1MyIsImFtb3VudCI6IjEwMDAwIiwiYXNzZXQiOiIweDgzMzU4OWZDRDZlRGI2RTA4ZjRjN0MzMkQ0ZjcxYjU0YmRBMDI5MTMiLCJwYXlUbyI6IjB4NDQ2NTgyNUIwYWM3MTNhQTJGYTA3RWEyOTAyMzAyMDgwNEExMjhlZSIsIm1heFRpbWVvdXRTZWNvbmRzIjo2MCwiZXh0cmEiOnsibmFtZSI6IlVTRCBDb2luIiwidmVyc2lvbiI6IjIifX0seyJzY2hlbWUiOiJleGFjdCIsIm5ldHdvcmsiOiJzb2xhbmE6NWV5a3Q0VXNGdjhQOE5KZFRSRXBZMXZ6cUtxWkt2ZHAiLCJhbW91bnQiOiIxMDAwMCIsImFzc2V0IjoiRVBqRldkZDVBdWZxU1NxZU0ycU4xeHp5YmFwQzhHNHdFR0drWnd5VER0MXYiLCJwYXlUbyI6IkFlMXVvd1lTamJINDd1Q2laTW1jNTFBcXhmOTY0YjFGczRkMWJqYVBtTU42IiwibWF4VGltZW91dFNlY29uZHMiOjYwLCJleHRyYSI6eyJkb21haW4iOiJpbnZva2V0LmNvbSIsImZlZVBheWVyIjoiR1ZKSjdyZEdpWHI1eGFZYlJ3UmJqZmFKTDdmbXdSeWdGaTFINmFHcUR2ZWIifX0seyJzY2hlbWUiOiJleGFjdCIsIm5ldHdvcmsiOiJlaXAxNTU6ODQ1MyIsImFtb3VudCI6IjEwMDAiLCJhc3NldCI6IjB4ODMzNTg5ZkNENmVEYjZFMDhmNGM3QzMyRDRmNzFiNTRiZEEwMjkxMyIsInBheVRvIjoiMHg0NDY1ODI1QjBhYzcxM2FBMkZhMDdFYTI5MDIzMDIwODA0QTEyOGVlIiwibWF4VGltZW91dFNlY29uZHMiOjYwLCJleHRyYSI6eyJuYW1lIjoiVVNEIENvaW4iLCJ2ZXJzaW9uIjoiMiJ9fV0sImV4dGVuc2lvbnMiOnsiYmF6YWFyIjp7InNjaGVtYSI6eyIkc2NoZW1hIjoiaHR0cHM6Ly9qc29uLXNjaGVtYS5vcmcvZHJhZnQvMjAyMC0xMi9zY2hlbWEiLCJwcm9wZXJ0aWVzIjp7ImlucHV0Ijp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjpmYWxzZSwicHJvcGVydGllcyI6eyJoZWFkZXJzIjp7ImFkZGl0aW9uYWxQcm9wZXJ0aWVzIjp7InR5cGUiOiJzdHJpbmcifSwidHlwZSI6Im9iamVjdCJ9LCJtZXRob2QiOnsiZW51bSI6WyJHRVQiLCJIRUFEIiwiREVMRVRFIl0sInR5cGUiOiJzdHJpbmcifSwicXVlcnlQYXJhbXMiOnsicHJvcGVydGllcyI6eyJmdWVsIjp7ImRlc2NyaXB0aW9uIjoiT3B0aW9uYWwgZGVjbGFyZWQgZnVlbC9wb3dlcnRyYWluIChlbGVjdHJpYywgaHlkcm9nZW4sIGdhcyAoZ3BsL2dudiksIHBsdWdfaW5faHlicmlkLCBwZXRyb2wsIGRpZXNlbCwgcGV0cm9sX2h5YnJpZCwgZGllc2VsX2h5YnJpZCksIHJ1bGVzIG9mIC92ZWhpY2xlL2NyaXRhaXI6IGEgdGhlcm1hbCB2ZWhpY2xlIGFsc28gbmVlZHMgJ2V1cm9fbm9ybScgKHByZV9ldXJvLCBldXJvMSwgZXVybzIsIGV1cm8zLCBldXJvNCwgZXVybzUsIGV1cm82KSBvciAnZmlyc3RfcmVnaXN0cmF0aW9uJyAoWVlZWS1NTS1ERCksIGFuIGVsZWN0cmljIG9uZSBuZWVkcyBuZWl0aGVyLiBOb3RoaW5nIHVzYWJsZSwgb3IgYW4gaW1wbGF1c2libGUgZGF0ZSwgbGVhdmVzIHRoZSBDcml0J0FpciBibG9jayBtaXNzaW5nIHdpdGggaXRzIHJlYXNvbiDigJQgaXQgbmV2ZXIgZmFpbHMgdGhlIHJlcG9ydCIsInR5cGUiOiJzdHJpbmcifSwidmluIjp7ImRlc2NyaXB0aW9uIjoiMTctY2hhcmFjdGVyIFZlaGljbGUgSWRlbnRpZmljYXRpb24gTnVtYmVyIChWSU4gYWxwaGFiZXQsIGV4Y2x1ZGVzIEkvTy9RKS4gUmVxdWlyZWQ6IGl0IGlzIHRoZSByZXBvcnQncyBtYW5kYXRvcnkgYmFzZS4gTWFsZm9ybWVkIGlzIGEgNDAwOyBhIHdlbGwtZm9ybWVkIFZJTiB3aG9zZSBtYW51ZmFjdHVyZXIgcHJlZml4IChXTUkpIGlzIHVua25vd24gaXMgYSA0MDQgKHVuYmlsbGVkKSDigJQgd2l0aG91dCB0aGUgZGVjb2RlIGJhc2UgdGhlcmUgaXMgbm8gcmVwb3J0IiwidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsidmluIl0sInR5cGUiOiJvYmplY3QifSwic2NoZW1hIjp7InR5cGUiOiJvYmplY3QifSwidHlwZSI6eyJjb25zdCI6Imh0dHAiLCJ0eXBlIjoic3RyaW5nIn19LCJyZXF1aXJlZCI6WyJ0eXBlIiwibWV0aG9kIl0sInR5cGUiOiJvYmplY3QifSwib3V0cHV0Ijp7InByb3BlcnRpZXMiOnsiZXhhbXBsZSI6eyJ0eXBlIjoib2JqZWN0In0sInR5cGUiOnsidHlwZSI6InN0cmluZyJ9fSwicmVxdWlyZWQiOlsidHlwZSJdLCJ0eXBlIjoib2JqZWN0In19LCJyZXF1aXJlZCI6WyJpbnB1dCJdLCJ0eXBlIjoib2JqZWN0In19fX0=",
"referrer-policy": "strict-origin-when-cross-origin",
"server": "nginx",
"strict-transport-security": "max-age=63072000; includeSubDomains",
"x-content-type-options": "nosniff"
}
Response body
{
"accepts": [
{
"amount": "10000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
},
{
"amount": "10000",
"asset": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
"extra": {
"domain": "invoket.com",
"feePayer": "GVJJ7rdGiXr5xaYbRwRbjfaJL7fmwRygFi1H6aGqDveb"
},
"maxTimeoutSeconds": 60,
"network": "solana:5eykt4UsFv8P8NJdTREpY1vzqKqZKvdp",
"payTo": "Ae1uowYSjbH47uCiZMmc51Aqxf964b1Fs4d1bjaPmMN6",
"scheme": "exact"
},
{
"amount": "1000",
"asset": "0x833589fCD6eDb6E08f4c7C32D4f71b54bdA02913",
"extra": {
"name": "USD Coin",
"version": "2"
},
"maxTimeoutSeconds": 60,
"network": "eip155:8453",
"payTo": "0x4465825B0ac713aA2Fa07Ea29023020804A128ee",
"scheme": "exact"
}
],
"error": "PAYMENT-SIGNATURE header is required",
"extensions": {
"bazaar": {
"info": {
"input": {
"headers": {
"accept": "application/json"
},
"method": "GET",
"queryParams": {
"fuel": "electric",
"vin": "5YJ3E1EA7KF000316"
},
"schema": {
"properties": {
"fuel": {
"description": "Optional declared fuel/powertrain (electric, hydrogen, gas (gpl/gnv), plug_in_hybrid, petrol, diesel, petrol_hybrid, diesel_hybrid), rules of /vehicle/critair: a thermal vehicle also needs 'euro_norm' (pre_euro, euro1, euro2, euro3, euro4, euro5, euro6) or 'first_registration' (YYYY-MM-DD), an electric one needs neither. Nothing usable, or an implausible date, leaves the Crit'Air block missing with its reason — it never fails the report",
"type": "string"
},
"vin": {
"description": "17-character Vehicle Identification Number (VIN alphabet, excludes I/O/Q). Required: it is the report's mandatory base. Malformed is a 400; a well-formed VIN whose manufacturer prefix (WMI) is unknown is a 404 (unbilled) — without the decode base there is no report",
"type": "string"
}
},
"required": [
"vin"
],
"type": "object"
},
"type": "http"
},
"output": {
"example": {
"data": {
"co2": {
"co2": {
"low_sample": false,
"sample_size": 42680,
"unit": "g/km",
"wltp": {
"p10": 0,
"p50": 0,
"p90": 0
}
},
"match_level": "model_year",
"provenance": {
"fetched_at": "2026-07-01T09:30:00Z",
"freshness": {
"as_of": "2026-07-28T00:00:00Z",
"kind": "snapshot"
},
"source": "eea-co2-monitoring"
},
"typical_specs": {
"engine_power_kw": 150,
"mass_kg": 1931
},
"vehicle": {
"commercial_name": "MODEL 3",
"make": "TESLA",
"year": 2019
}
},
"coverage": {
"complete": true,
"missing": []
},
"critair": {
"critair_class": "0",
"derivation": {
"fuel": "electric",
"via": "fuel"
},
"fuel": "electric",
"provenance": {
"fetched_at": "2026-07-01T09:30:00Z",
"freshness": {
"as_of": "2026-07-04T00:00:00Z",
"kind": "snapshot"
},
"source": "critair-regulation+zfe-open-data"
},
"regulation": {
"as_of": "2026-07-04",
"reference": "Arrêté du 21 juin 2016 (nomenclature Crit'Air, art. R. 318-2 du code de la route)"
},
"vehicle_class": "m1",
"zfe_restrictions": []
},
"recalls": {
"coverage": {
"complete": false,
"reason": "expected source(s) not ingested: Safety Gate",
"sources": [
{
"as_of": "2026-07-01",
"fresh": true,
"name": "NHTSA"
},
{
"as_of": "2026-07-01",
"fresh": true,
"name": "RappelConso"
},
{
"missing": true,
"name": "Safety Gate",
"reason": "Safety Gate source is not currently ingested"
}
]
},
"make": "TESLA",
"provenance": {
"fetched_at": "2026-07-01T09:30:00Z",
"freshness": {
"as_of": "2026-07-01T00:00:00Z",
"kind": "snapshot"
},
"source": "nhtsa+rappelconso"
},
"recalls": [
{
"campaign_id": "22V037000",
"component": "STEERING",
"match": {
"make": "TESLA",
"years": {
"from": 2017,
"to": 2022
}
},
"published_at": "2022-01-27",
"remedy": "Free over-the-air software update.",
"source": "NHTSA",
"summary": "Power steering assist may be reduced over rough terrain.",
"url": "https://www.nhtsa.gov/recalls?nhtsaId=22V037000"
}
],
"year": 2019
},
"registration_tax": {
"coverage": "insufficient_inputs",
"missing_inputs": [
"fiscal_power",
"region"
]
},
"vin_decode": {
"attributes": {
"Model": "Model 3"
},
"check_digit_applicable": true,
"check_digit_valid": false,
"country": "United States",
"coverage": {
"complete": true
},
"make": "TESLA",
"make_source": "wmi",
"manufacturer": "Tesla, Inc.",
"model_year": 2019,
"provenance": {
"fetched_at": "2026-07-01T09:30:00Z",
"freshness": {
"as_of": "2026-06-01T00:00:00Z",
"kind": "snapshot"
},
"source": "nhtsa-vpic"
},
"region": "North America",
"vin": "5YJ3E1EA7KF000316",
"wmi": "5YJ"
}
},
"provenance": {
"fetched_at": "2026-07-01T09:30:00Z",
"freshness": {
"as_of": "2026-06-01T00:00:00Z",
"kind": "snapshot"
},
"source": "nhtsa-vpic"
}
},
"schema": {
"properties": {
"data": {
"properties": {
"co2": {
"description": "Best-effort EU CO2 block (core of /vehicle/co2), keyed by the decoded make, model and model year — hence ALWAYS match_level 'model_year' with its p10/p90 dispersion: a European VIN carries no type-approval variant, a limit never worked around with a single figure. Model absent from the registry, year outside the ingested window or dataset not deployed: block out, motivated in coverage.missing, never an error of the report",
"properties": {
"co2": {
"properties": {
"low_sample": {
"type": "boolean"
},
"nedc": {
"type": "integer"
},
"sample_size": {
"type": "integer"
},
"unit": {
"type": "string"
},
"wltp": {
"properties": {
"p10": {
"type": "integer"
},
"p50": {
"type": "integer"
},
"p90": {
"type": "integer"
}
},
"required": [
"p50"
],
"type": "object"
}
},
"required": [
"low_sample",
"sample_size",
"unit"
],
"type": "object"
},
"coverage": {
"type": "object"
},
"limits": {
"description": "Reading limits of the CO2 figures, returned verbatim as on /vehicle/co2 (elided from this example only, to keep the 402 header small)",
"type": "array"
},
"match_level": {
"type": "string"
},
"provenance": {
"properties": {
"fetched_at": {
"type": "string"
},
"freshness": {
"properties": {
"as_of": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"as_of",
"kind"
],
"type": "object"
},
"source": {
"type": "string"
}
},
"required": [
"fetched_at",
"freshness",
"source"
],
"type": "object"
},
"typical_specs": {
"description": "Typical figures of the CO2 aggregate (engine capacity, power, mass, and fuel_mix when the deployed dataset carries it), each an independent registration-weighted median over the aggregated versions: central values of a group, never the datasheet of one version. Same carrier and same meaning as on /vehicle/co2",
"properties": {
"engine_capacity_cm3": {
"type": "integer"
},
"engine_power_kw": {
"type": "integer"
},
"fuel_mix": {
"type": "array"
},
"mass_kg": {
"type": "integer"
}
},
"required": [
"engine_power_kw"
],
"type": "object"
},
"vehicle": {
"properties": {
"commercial_name": {
"type": "string"
},
"make": {
"type": "string"
},
"make_source": {
"type": "string"
},
"year": {
"type": "integer"
}
},
"required": [
"make"
],
"type": "object"
}
},
"required": [
"co2",
"match_level",
"provenance",
"vehicle"
],
"type": "object"
},
"coverage": {
"description": "Honest coverage of the secondary blocks: complete=false as soon as one is missing, each named with its reason — never an invented block, never a silent error. The tax costing is not listed here: that block is always present and carries its own coverage",
"properties": {
"complete": {
"type": "boolean"
},
"missing": {
"type": "array"
}
},
"required": [
"complete",
"missing"
],
"type": "object"
},
"critair": {
"description": "Best-effort Crit'Air block (core and rules of /vehicle/critair): present as soon as the declared characteristics allow a class — a battery electric needs neither norm nor date — otherwise in coverage.missing with its reason, never a 5xx",
"properties": {
"critair_class": {
"type": "string"
},
"derivation": {
"properties": {
"euro_norm": {
"type": "string"
},
"fuel": {
"type": "string"
},
"via": {
"type": "string"
}
},
"required": [
"fuel",
"via"
],
"type": "object"
},
"euro_norm": {
"type": "string"
},
"first_registration": {
"type": "string"
},
"fuel": {
"type": "string"
},
"notes": {
"description": "Modelling limits of the ZFE reference data, returned verbatim as on /vehicle/critair (elided from this example only, to keep the 402 header small)",
"type": "string"
},
"provenance": {
"properties": {
"fetched_at": {
"type": "string"
},
"freshness": {
"properties": {
"as_of": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"as_of",
"kind"
],
"type": "object"
},
"source": {
"type": "string"
}
},
"required": [
"fetched_at",
"freshness",
"source"
],
"type": "object"
},
"regulation": {
"properties": {
"as_of": {
"type": "string"
},
"reference": {
"type": "string"
}
},
"required": [
"as_of",
"reference"
],
"type": "object"
},
"vehicle_class": {
"type": "string"
},
"zfe_restrictions": {
"type": "array"
}
},
"required": [
"critair_class",
"derivation",
"fuel",
"provenance",
"regulation",
"vehicle_class",
"zfe_restrictions"
],
"type": "object"
},
"recalls": {
"description": "Best-effort recall block: candidate campaigns matched by the decoded make and model year, with its own multi-source provenance; listed in coverage.missing when it cannot be produced, never a 5xx",
"properties": {
"coverage": {
"properties": {
"complete": {
"type": "boolean"
},
"reason": {
"type": "string"
},
"sources": {
"items": {
"properties": {
"as_of": {
"type": "string"
},
"fresh": {
"type": "boolean"
},
"name": {
"type": "string"
}
},
"required": [
"as_of",
"fresh",
"name"
],
"type": "object"
},
"type": "array"
}
},
"required": [
"complete",
"reason",
"sources"
],
"type": "object"
},
"make": {
"type": "string"
},
"provenance": {
"properties": {
"fetched_at": {
"type": "string"
},
"freshness": {
"properties": {
"as_of": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"as_of",
"kind"
],
"type": "object"
},
"source": {
"type": "string"
}
},
"required": [
"fetched_at",
"freshness",
"source"
],
"type": "object"
},
"recalls": {
"items": {
"properties": {
"campaign_id": {
"type": "string"
},
"component": {
"type": "string"
},
"match": {
"properties": {
"make": {
"type": "string"
},
"years": {
"properties": {
"from": {
"type": "integer"
},
"to": {
"type": "integer"
}
},
"required": [
"from",
"to"
],
"type": "object"
}
},
"required": [
"make"
],
"type": "object"
},
"published_at": {
"type": "string"
},
"remedy": {
"type": "string"
},
"source": {
"type": "string"
},
"summary": {
"type": "string"
},
"url": {
"type": "string"
}
},
"required": [
"campaign_id",
"match",
"source",
"summary"
],
"type": "object"
},
"type": "array"
},
"total": {
"type": "integer"
},
"truncated": {
"type": "boolean"
},
"vin": {
"type": "object"
},
"year": {
"type": "integer"
}
},
"required": [
"coverage",
"make",
"provenance",
"recalls"
],
"type": "object"
},
"registration_tax": {
"description": "French registration tax block (core of /vehicle/tax), ALWAYS present with its own closed coverage, one of exactly three values: 'computed' (items, brackets, exemptions by article, total_eur), 'insufficient_inputs' naming what is missing, or 'date_out_of_range' when the registration date predates the published schedules (France is covered from 2020-01-01 onwards) — nothing is missing in that case, so no extra attribute will ever unlock a costing. Never a partial total. Technical figures come from the CO2 block; add 'region' and 'fiscal_power' to the query for a costing ('registration_date' defaults to 'first_registration', else today; country implicitly FR)",
"properties": {
"coverage": {
"type": "string"
},
"missing_inputs": {
"items": {
"type": "string"
},
"type": "array"
},
"reason": {
"type": "string"
},
"total_eur": {
"description": "Sum of the tax items, on the computed branch only — and absent there too as soon as one item is undetermined: a partial total would be a wrong figure",
"type": "number"
}
},
"required": [
"coverage"
],
"type": "object"
},
"vin_decode": {
"description": "Mandatory base block: the full VIN decode (/vehicle/vin/decode) with its own vPIC provenance",
"properties": {
"attributes": {
"properties": {
"Model": {
"type": "string"
}
},
"required": [
"Model"
],
"type": "object"
},
"check_digit_applicable": {
"type": "boolean"
},
"check_digit_valid": {
"type": "boolean"
},
"country": {
"type": "string"
},
"coverage": {
"properties": {
"complete": {
"type": "boolean"
},
"reason": {
"type": "string"
}
},
"required": [
"complete"
],
"type": "object"
},
"make": {
"type": "string"
},
"make_source": {
"type": "string"
},
"manufacturer": {
"type": "string"
},
"model_year": {
"type": "integer"
},
"model_year_ambiguous": {
"type": "boolean"
},
"provenance": {
"properties": {
"fetched_at": {
"type": "string"
},
"freshness": {
"properties": {
"as_of": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"as_of",
"kind"
],
"type": "object"
},
"source": {
"type": "string"
}
},
"required": [
"fetched_at",
"freshness",
"source"
],
"type": "object"
},
"region": {
"type": "string"
},
"vin": {
"type": "string"
},
"wmi": {
"type": "string"
}
},
"required": [
"check_digit_applicable",
"check_digit_valid",
"coverage",
"manufacturer",
"provenance",
"vin",
"wmi"
],
"type": "object"
}
},
"required": [
"coverage",
"registration_tax",
"vin_decode"
],
"type": "object"
},
"provenance": {
"properties": {
"fetched_at": {
"type": "string"
},
"freshness": {
"properties": {
"as_of": {
"type": "string"
},
"kind": {
"type": "string"
}
},
"required": [
"as_of",
"kind"
],
"type": "object"
},
"source": {
"type": "string"
}
},
"required": [
"fetched_at",
"freshness",
"source"
],
"type": "object"
}
},
"required": [
"data",
"provenance"
],
"type": "object"
},
"type": "json"
}
},
"schema": {
"$schema": "https://json-schema.org/draft/2020-12/schema",
"properties": {
"input": {
"additionalProperties": false,
"properties": {
"headers": {
"additionalProperties": {
"type": "string"
},
"type": "object"
},
"method": {
"enum": [
"GET",
"HEAD",
"DELETE"
],
"type": "string"
},
"queryParams": {
"properties": {
"fuel": {
"description": "Optional declared fuel/powertrain (electric, hydrogen, gas (gpl/gnv), plug_in_hybrid, petrol, diesel, petrol_hybrid, diesel_hybrid), rules of /vehicle/critair: a thermal vehicle also needs 'euro_norm' (pre_euro, euro1, euro2, euro3, euro4, euro5, euro6) or 'first_registration' (YYYY-MM-DD), an electric one needs neither. Nothing usable, or an implausible date, leaves the Crit'Air block missing with its reason — it never fails the report",
"type": "string"
},
"vin": {
"description": "17-character Vehicle Identification Number (VIN alphabet, excludes I/O/Q). Required: it is the report's mandatory base. Malformed is a 400; a well-formed VIN whose manufacturer prefix (WMI) is unknown is a 404 (unbilled) — without the decode base there is no report",
"type": "string"
}
},
"required": [
"vin"
],
"type": "object"
},
"schema": {
"type": "object"
},
"type": {
"const": "http",
"type": "string"
}
},
"required": [
"type",
"method"
],
"type": "object"
},
"output": {
"properties": {
"example": {
"type": "object"
},
"type": {
"type": "string"
}
},
"required": [
"type"
],
"type": "object"
}
},
"required": [
"input"
],
"type": "object"
}
}
},
"resource": {
"description": "Before your agent buys or appraises a vehicle: one consolidated report from a VIN — decode, candidate recall campaigns, type-approval CO2, the French registration tax it would cost and, from declared characteristics, Crit'Air / low-emission-zone status — from official NHTSA vPIC, RappelConso, EU 2019/631 and French tax sources, each block with its own provenance and honest coverage",
"mimeType": "application/json",
"url": "https://api.invoket.com/vehicle/report"
},
"x402Version": 2
}
Request headers
{
"accept": "*/*",
"user-agent": "Fetch402Bot/0.1 (+https://fetch402.com/crawler; contact: crawler@fetch402.com)"
}
Machine contract
Schemas.
{}
{}