{"openapi":"3.1.0","info":{"title":"The Used Car Index","version":"1.1.0","description":"Observed vehicle records, stored verified sales rates, and listing changes. No rating, verdict or repair advice. Version 1.1.0 keeps the /v1/ paths; see the Changes section and workers/api/CHANGELOG.md for additions, behavior changes and fixes since launch."},"externalDocs":{"description":"Changes since API 1.0.0","url":"https://api.theusedcarindex.com/#changes"},"servers":[{"url":"https://api.theusedcarindex.com"}],"paths":{"/":{"get":{"summary":"Documentation and live examples","security":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"text/html":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/healthz":{"get":{"summary":"D1 health check","security":[],"parameters":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"ok":{"type":"boolean"}},"required":["ok"]}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/openapi.json":{"get":{"summary":"This OpenAPI 3.1 document","security":[],"parameters":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/llms.txt":{"get":{"summary":"Plain text agent reference","security":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/.well-known/mcp/server-card.json":{"get":{"summary":"MCP discovery card","security":[],"parameters":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"},"description":{"type":"string"},"endpoint":{"type":"string","format":"uri"},"transport":{"const":"streamable-http"},"auth":{"const":"bearer"},"serverInfo":{"type":"object","properties":{"name":{"type":"string"},"version":{"type":"string"}},"required":["name","version"]},"authentication":{"type":"object","properties":{"required":{"const":false},"schemes":{"type":"array","items":{"type":"string"}},"note":{"type":"string"}},"required":["required","schemes","note"]},"free_tier":{"type":"object","additionalProperties":true},"homepage":{"type":"string","format":"uri"},"tools":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"title":{"type":"string"},"description":{"type":"string"},"inputSchema":{"type":"object","additionalProperties":true},"annotations":{"type":"object","additionalProperties":true}},"required":["name","title","description","inputSchema","annotations"]}}},"required":["name","version","description","endpoint","transport","auth","serverInfo","authentication","free_tier","homepage","tools"]}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/.well-known/security.txt":{"get":{"summary":"Security contact and disclosure preferences","security":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"text/plain":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/vehicle_risk":{"get":{"summary":"Recorded facts for one vehicle (1 unit)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"make","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"model","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"year","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2027}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VehicleRisk"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/demo/vehicle_risk":{"get":{"summary":"Try recorded vehicle facts without a key (1 shared demo unit)","security":[],"parameters":[{"name":"make","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"model","in":"query","required":true,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"year","in":"query","required":true,"schema":{"type":"integer","minimum":2000,"maximum":2027}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VehicleRisk"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"description":"Rate limited and meant for trying the API. Real use needs a key. Uses shared demo quotas and returns 503 when the demo is not configured."}},"/v1/compare_vehicles":{"get":{"summary":"Compact facts and factual orderings (N units)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"vehicles","in":"query","required":true,"schema":{"type":"string","description":"2..5 comma-separated make:model:year items; URL-encode. Limited by max_compare."}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comparison"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"post":{"summary":"Compare 2..5 vehicles, bounded by max_compare (N units)","security":[{"bearerAuth":[]},{"apiKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"vehicles":{"type":"array","items":{"$ref":"#/components/schemas/VehicleInput"},"minItems":2,"maxItems":5}},"required":["vehicles"],"additionalProperties":false}}}},"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Comparison"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/listing_changes":{"get":{"summary":"Observed listing changes (1 unit)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"make","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"model","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"year","in":"query","required":false,"schema":{"type":"integer","minimum":2000,"maximum":2027}},{"name":"vin","in":"query","required":false,"schema":{"type":"string","pattern":"^[A-HJ-NPR-Z0-9]{17}$"}},{"name":"event_type","in":"query","required":false,"schema":{"enum":["new","price_drop","relisted","delisted"]}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date","description":"Inclusive start date."}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date","description":"Inclusive end date."}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200,"default":50}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","description":"Opaque next_cursor; retain the same filters."}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ListingChanges"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/recall_changes":{"get":{"summary":"New and updated NHTSA recalls, investigations and complaint-count changes (1 unit)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"make","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"model","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"year","in":"query","required":false,"schema":{"type":"integer","minimum":2000,"maximum":2027}},{"name":"type","in":"query","required":false,"schema":{"enum":["recall","investigation","complaint_count"]}},{"name":"since","in":"query","required":false,"schema":{"type":"string","format":"date","description":"Inclusive first observed_date."}},{"name":"until","in":"query","required":false,"schema":{"type":"string","format":"date","description":"Inclusive last observed_date."}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200,"default":50}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","description":"Opaque next_cursor; retain the same filters."}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/RecallChanges"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/watchlist":{"get":{"summary":"Your watched vehicles and plan cap (no charge); paid plans only","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/Watchlist"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"post":{"summary":"Watch one vehicle for new recalls and investigations (no charge); paid plans only","security":[{"bearerAuth":[]},{"apiKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"$ref":"#/components/schemas/VehicleInput"}}}},"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchEntry"}}}},"201":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchEntry"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"delete":{"summary":"Stop watching a vehicle by id, or by make, model and year (no charge)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"id","in":"query","required":false,"schema":{"type":"integer","minimum":0}},{"name":"make","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"model","in":"query","required":false,"schema":{"type":"string","minLength":1,"maxLength":64}},{"name":"year","in":"query","required":false,"schema":{"type":"integer","minimum":2000,"maximum":2027}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"deleted":{"const":1}},"required":["deleted"]}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/watchlist/alerts":{"get":{"summary":"Recall and investigation changes for watched vehicles, oldest first (1 unit); paid plans only","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[{"name":"type","in":"query","required":false,"schema":{"enum":["recall","investigation","complaint_count"]}},{"name":"limit","in":"query","required":false,"schema":{"type":"integer","minimum":1,"maximum":200,"default":50}},{"name":"cursor","in":"query","required":false,"schema":{"type":"string","description":"Opaque cursor: next_cursor for the next page, resume_cursor for the next poll."}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/WatchAlerts"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/v1/index":{"get":{"summary":"Free public market snapshot (no key or usage charge)","security":[],"parameters":[{"name":"download","in":"query","required":false,"schema":{"type":"string","enum":["1"],"description":"Download the same JSON as a dated attachment."}}],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}},"ETag":{"schema":{"type":"string"}},"Cache-Control":{"schema":{"type":"string"}},"Content-Disposition":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"$ref":"#/components/schemas/MarketIndex"}}}},"304":{"description":"Unchanged snapshot; empty body.","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}},"ETag":{"schema":{"type":"string"}},"Cache-Control":{"schema":{"type":"string"}},"Content-Disposition":{"schema":{"type":"string"}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}},"description":"Observed dealer inventory, with prices and mileage as last recorded (price increases and mileage-only changes are not recorded), and the latest 30 days of events. Delisted never establishes a sale. Empty data returns 200. Public cache lifetime is 300 seconds; ETag supports conditional requests."}},"/v1/usage":{"get":{"summary":"Own plan and UTC counters (no charge)","security":[{"bearerAuth":[]},{"apiKey":[]}],"parameters":[],"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","properties":{"plan":{"$ref":"#/components/schemas/Plan"},"key":{"type":"object","properties":{"expires_at":{"type":["string","null"],"format":"date-time"}},"required":["expires_at"]},"counters":{"type":"object","properties":{"minute":{"$ref":"#/components/schemas/Counter"},"day":{"$ref":"#/components/schemas/Counter"},"month":{"$ref":"#/components/schemas/Counter"}},"required":["minute","day","month"]}},"required":["plan","counters"]}}}},"400":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"401":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"403":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"404":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"413":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"415":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"429":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}},"503":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}},"/mcp":{"post":{"summary":"Stateless Streamable HTTP MCP","description":"initialize, ping and tools/list require no key; tools/call requires a key. Accept is optional. SDK JSON-RPC errors can use HTTP 200; error.data.status always matches the HTTP status. JSON responses, 64 KB request limit. Same schemas and unit charges as HTTP.","security":[{},{"bearerAuth":[]},{"apiKey":[]}],"requestBody":{"required":true,"content":{"application/json":{"schema":{"type":"object","properties":{"jsonrpc":{"const":"2.0"},"id":{"type":["string","number","null"]},"method":{"type":"string"},"params":{"type":"object"}},"required":["jsonrpc","method"]}}}},"responses":{"200":{"description":"Success","headers":{"X-Request-Id":{"schema":{"type":"string"}},"X-RateLimit-Limit":{"schema":{"type":"string"}},"X-RateLimit-Remaining":{"schema":{"type":"string"}},"X-RateLimit-Reset":{"schema":{"type":"string"}},"X-RateLimit-Window":{"schema":{"type":"string"}}},"content":{"application/json":{"schema":{"type":"object","description":"JSON-RPC result or SDK error with error.data.status equal to 200; tool results contain JSON text and structuredContent."}}}},"202":{"description":"Notification accepted"},"400":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"401":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"403":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"404":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"413":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"415":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"429":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}},"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}},"headers":{"Retry-After":{"schema":{"type":"string"}}}},"500":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}},"503":{"description":"JSON-RPC error; data contains a problem. 401 includes WWW-Authenticate: Bearer. 429 includes Retry-After; binding denials use problem+json.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/RpcError"}}}}}},"get":{"summary":"Unsupported; use POST","security":[],"responses":{"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}},"delete":{"summary":"Unsupported; stateless server","security":[],"responses":{"405":{"description":"RFC 9457 problem with stable code; 429 includes Retry-After.","content":{"application/problem+json":{"schema":{"$ref":"#/components/schemas/Problem"}}}}}}}},"components":{"securitySchemes":{"bearerAuth":{"type":"http","scheme":"bearer","description":"API key; distinct from administrative credentials."},"apiKey":{"type":"apiKey","in":"header","name":"X-API-Key"}},"schemas":{"Problem":{"type":"object","properties":{"type":{"type":"string","format":"uri"},"title":{"type":"string"},"status":{"type":"integer"},"detail":{"type":"string"},"code":{"type":"string"}},"required":["type","title","status","detail","code"],"additionalProperties":true},"RpcError":{"type":"object","properties":{"jsonrpc":{"const":"2.0"},"id":{"type":["string","number","null"]},"error":{"type":"object","properties":{"code":{"type":"integer"},"message":{"type":"string"},"data":{"$ref":"#/components/schemas/Problem"}},"required":["code","message","data"]}},"required":["jsonrpc","id","error"]},"VehicleInput":{"type":"object","properties":{"make":{"type":"string","minLength":1,"maxLength":64},"model":{"type":"string","minLength":1,"maxLength":64},"year":{"type":"integer","minimum":2000,"maximum":2027}},"required":["make","model","year"],"additionalProperties":false},"Vehicle":{"type":"object","properties":{"make":{"type":"string","minLength":1,"maxLength":64},"model":{"type":"string","minLength":1,"maxLength":64},"year":{"type":"integer","minimum":2000,"maximum":2027},"family_key":{"type":"string"},"matched_models":{"type":"array","items":{"type":"object","properties":{"model":{"type":"string"},"complaints":{"type":"integer","minimum":0}},"required":["model","complaints"]},"description":"matched_models lists the vehicle's own NHTSA labels that carry complaints, or all of its own labels with count 0 when the vehicle has no complaints; other_names lists zero-count own labels of a vehicle that has complaints and alternate NHTSA labels, including lookup-only aliases."},"other_names":{"type":"array","items":{"type":"string"},"description":"matched_models lists the vehicle's own NHTSA labels that carry complaints, or all of its own labels with count 0 when the vehicle has no complaints; other_names lists zero-count own labels of a vehicle that has complaints and alternate NHTSA labels, including lookup-only aliases."},"resolved_via":{"enum":["vehicle_models","model_aliases","family_key"]}},"required":["make","model","year","family_key","matched_models","other_names","resolved_via"]},"Rate":{"type":"object","properties":{"complaints_per_100k_sold":{"type":["number","null"]},"units_sold":{"type":["number","null"]},"sales_year":{"type":["number","null"]},"basis":{"type":["string","null"]},"source":{"type":["string","null"]},"source_url":{"type":["string","null"]},"null_reason":{"type":["string","null"]}},"required":["complaints_per_100k_sold","units_sold","sales_year","basis","source","source_url","null_reason"]},"Plan":{"type":"object","properties":{"id":{"type":"string"},"label":{"type":"string"},"per_minute":{"type":"integer","minimum":0},"per_day":{"type":"integer","minimum":0},"per_month":{"type":"integer","minimum":0},"max_compare":{"type":"integer","minimum":1,"maximum":5},"mcp_enabled":{"type":"boolean"}},"required":["id","label","per_minute","per_day","per_month","max_compare","mcp_enabled"]},"Counter":{"type":"object","properties":{"period_start":{"type":"string"},"units":{"type":"integer","minimum":0},"limit":{"type":"integer","minimum":0},"remaining":{"type":"integer","minimum":0},"reset_at":{"type":"string"}},"required":["period_start","units","limit","remaining","reset_at"]},"VehicleRisk":{"type":"object","properties":{"vehicle":{"$ref":"#/components/schemas/Vehicle"},"complaints":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"with_crash":{"type":"integer","minimum":0},"with_fire":{"type":"integer","minimum":0},"with_injury":{"type":"integer","minimum":0},"injuries":{"type":"integer","minimum":0},"deaths":{"type":"integer","minimum":0},"by_source":{"type":"object","properties":{"both":{"type":"integer","minimum":0},"bulk_only":{"type":"integer","minimum":0},"api_only":{"type":"integer","minimum":0}},"required":["both","bulk_only","api_only"]},"coverage_complete":{"type":"boolean"},"top_systems":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"count":{"type":"integer","minimum":0},"share":{"type":"number","minimum":0,"maximum":1,"description":"Distinct complaint records naming this system divided by complaints.total; a single share never exceeds 1. Shares across systems can sum above 1."}},"required":["system","count","share"]}},"top_subsystems":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"subsystem":{"type":"string","minLength":1},"count":{"type":"integer","minimum":0}},"required":["system","subsystem","count"]}}},"required":["total","with_crash","with_fire","with_injury","injuries","deaths","by_source","coverage_complete","top_systems","top_subsystems"]},"recalls":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"do_not_drive":{"type":"integer","minimum":0},"park_outside":{"type":"integer","minimum":0},"potential_units_max":{"type":["number","null"]},"by_system":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"count":{"type":"integer","minimum":0}},"required":["system","count"]}},"latest":{"type":"array","items":{"type":"object","properties":{"campaign_number":{"type":"string"},"received_date":{"type":["string","null"]},"systems":{"type":"array","items":{"type":"string"}},"defect":{"type":["string","null"]},"consequence":{"type":["string","null"]},"remedy":{"type":["string","null"]},"do_not_drive":{"type":["boolean","null"]},"park_outside":{"type":["boolean","null"]},"truncated":{"type":"boolean"},"url":{"type":"string"}},"required":["campaign_number","received_date","systems","defect","consequence","remedy","do_not_drive","park_outside","truncated","url"]},"maxItems":10}},"required":["total","do_not_drive","park_outside","potential_units_max","by_system","latest"]},"investigations":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"open":{"type":"integer","minimum":0},"items":{"type":"array","items":{"type":"object","properties":{"action_number":{"type":"string"},"opened_date":{"type":["string","null"]},"closed_date":{"type":["string","null"]},"campaign_numbers":{"type":"array","items":{"type":"string"}},"subject":{"type":["string","null"]},"summary":{"type":["string","null"]},"systems":{"type":"array","items":{"type":"string"}},"url":{"type":["string","null"]}},"required":["action_number","opened_date","closed_date","campaign_numbers","subject","summary","systems","url"]}}},"required":["total","open","items"]},"manufacturer_communications":{"type":"object","properties":{"total":{"type":"integer","minimum":0},"by_system":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"subsystem":{"type":"string","description":"The empty string means all subsystems of this system; by_subsystem holds the subsystem rows."},"source_field":{"type":"string"},"count":{"type":"integer","minimum":0}},"required":["system","subsystem","source_field","count"]}},"by_subsystem":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"subsystem":{"type":"string","minLength":1},"source_field":{"type":"string"},"count":{"type":"integer","minimum":0}},"required":["system","subsystem","source_field","count"]},"maxItems":25},"recent":{"type":"array","items":{"type":"object"},"maxItems":10}},"required":["total","by_system","by_subsystem","recent"]},"rate":{"$ref":"#/components/schemas/Rate"},"model_tags":{"oneOf":[{"type":"null"},{"$ref":"#/components/schemas/ModelTags"}]},"model_tags_null_reason":{"enum":[null,"no_complaints","model_year_not_tagged","no_tagged_complaints"],"description":"null when tags exist; no_complaints when complaints.total is zero; model_year_not_tagged when the model year is below the first tagged year in data_build.tag_coverage (2012 when that receipt field is absent); no_tagged_complaints when the year is covered but no tagged complaints exist."},"data":{"type":"object","properties":{"built_at":{"type":["string","null"]},"sources":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"url":{"type":"string"}},"required":["name","url"]}},"notes":{"type":"array","items":{"type":"string"}}},"required":["built_at","sources","notes"]}},"required":["vehicle","complaints","recalls","investigations","manufacturer_communications","rate","model_tags","model_tags_null_reason","data"]},"ModelTags":{"type":"object","properties":{"model":{"oneOf":[{"type":"string"},{"type":"array","items":{"type":"string"},"minItems":2,"uniqueItems":true}],"description":"Stored tagged_by provenance. One model string, or all model versions if several contributed."},"schema_version":{"const":"tag-v1"},"tagged_complaints":{"type":"integer","minimum":0},"complaints_total":{"type":"integer","minimum":0},"tagged_share":{"type":"number","minimum":0,"maximum":1,"description":"Tagged complaints divided by the NHTSA complaint total."},"failure_modes":{"type":"array","items":{"type":"object","properties":{"label":{"enum":["mechanical_failure","electrical_electronic","fluid_or_fuel_leak","fire_or_overheating","loss_of_control","restraint_or_airbag","visibility_or_lighting","structural_or_corrosion","noise_or_comfort","unclear"]},"count":{"type":"integer","minimum":0},"share":{"type":"number","minimum":0,"maximum":1,"description":"Count divided by tagged_complaints."},"mean_confidence":{"type":"number","minimum":0,"maximum":1,"description":"Stored mean of the model probabilities for this chosen label; not accuracy."},"high_confidence_count":{"type":"integer","minimum":0,"description":"Confidence at least 0.8."},"low_confidence_count":{"type":"integer","minimum":0,"description":"Confidence below 0.5."}},"required":["label","count","share","mean_confidence","high_confidence_count","low_confidence_count"]},"maxItems":10},"severities":{"type":"array","items":{"type":"object","properties":{"label":{"enum":["none","low","moderate","high","critical"]},"count":{"type":"integer","minimum":0},"share":{"type":"number","minimum":0,"maximum":1,"description":"Count divided by tagged_complaints."},"mean_confidence":{"type":"number","minimum":0,"maximum":1,"description":"Stored mean of the model probabilities for this chosen label; not accuracy."},"high_confidence_count":{"type":"integer","minimum":0,"description":"Confidence at least 0.8."},"low_confidence_count":{"type":"integer","minimum":0,"description":"Confidence below 0.5."}},"required":["label","count","share","mean_confidence","high_confidence_count","low_confidence_count"]},"maxItems":5},"confidence_note":{"type":"string","description":"Confidence is the model's own probability for the label it chose (0 to 1), not accuracy."},"note":{"type":"string","description":"Jev tags exist for model years 2012 and newer; model year 2012 is only partly tagged and earlier model years carry no tags. tagged_share gives each vehicle's tagged fraction; about 43 percent of all complaints are tagged. Built from data_build.tag_coverage: model years {full_from_model_year} and newer are tagged in full, the partial year or range in part when those years differ (a single year is written once), and earlier model years have no tags. When tag_coverage is absent, the note says tagged_share gives the vehicle's tagged fraction. NHTSA's own flags remain separate in the complaints block."}},"required":["model","schema_version","tagged_complaints","complaints_total","tagged_share","failure_modes","severities","confidence_note","note"]},"Comparison":{"type":"object","properties":{"vehicles":{"type":"array","items":{"type":"object","properties":{"key":{"type":"string"},"vehicle":{"type":"object"},"not_found":{"type":"boolean"},"suggestions":{"type":"array","items":{"type":"object"}},"complaints":{"type":["object","null"]},"recalls":{"type":["object","null"]},"investigations":{"type":["object","null"]},"manufacturer_communications":{"type":["object","null"]},"rate":{"oneOf":[{"$ref":"#/components/schemas/Rate"},{"type":"null"}]},"top_systems":{"type":"array","items":{"type":"object","properties":{"system":{"type":"string"},"count":{"type":"integer","minimum":0}},"required":["system","count"]}}},"required":["key","vehicle","not_found","complaints","recalls","investigations","manufacturer_communications","rate","top_systems"]}},"comparison":{"type":"object","properties":{"fewest_complaints_per_100k":{"type":"object","properties":{"ordered":{"type":"array","items":{"type":"string"}},"unrated":{"type":"array","items":{"type":"string"}}},"required":["ordered","unrated"]},"most_recalls":{"type":"array","items":{"type":"string"}},"most_complaints":{"type":"array","items":{"type":"string"}}},"required":["fewest_complaints_per_100k","most_recalls","most_complaints"]}},"required":["vehicles","comparison"]},"MarketIndex":{"type":"object","properties":{"schema_version":{"const":1},"name":{"const":"The Used Car Index market snapshot"},"status":{"enum":["ok","empty"]},"as_of":{"type":["string","null"]},"generated_from":{"type":"object","properties":{"listing_events_through_id":{"type":"integer","minimum":0},"first_event_date":{"type":["string","null"]},"latest_event_date":{"type":["string","null"]},"event_days":{"type":"integer","minimum":0},"nhtsa_data_built_at":{"type":["string","null"]},"sources":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"detail":{"type":"string"}},"required":["name","detail"]}}},"required":["listing_events_through_id","first_event_date","latest_event_date","event_days","nhtsa_data_built_at","sources"]},"coverage":{"type":"object","properties":{"region":{"const":"Chicago area"},"dealers_registered":{"type":"integer","minimum":0},"dealers_collecting":{"type":"integer","minimum":0},"dealers_with_active_listings":{"type":"integer","minimum":0},"last_collector_run_at":{"type":["string","null"]},"dealers":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"site_url":{"type":"string"},"active_listings":{"type":"integer","minimum":0}},"required":["name","site_url","active_listings"]},"maxItems":200},"dealers_truncated":{"type":"boolean"},"basis":{"type":"string"}},"required":["region","dealers_registered","dealers_collecting","dealers_with_active_listings","last_collector_run_at","dealers","dealers_truncated","basis"]},"inventory":{"type":"object","properties":{"active_listings":{"type":"integer","minimum":0},"delisted_listings":{"type":"integer","minimum":0},"tracked_listings":{"type":"integer","minimum":0},"priced_listings":{"type":"integer","minimum":0},"listings_with_mileage":{"type":"integer","minimum":0},"median_price":{"type":["number","null"]},"median_mileage":{"type":["number","null"]},"basis":{"type":"string"}},"required":["active_listings","delisted_listings","tracked_listings","priced_listings","listings_with_mileage","median_price","median_mileage","basis"]},"latest_day":{"type":"object","properties":{"date":{"type":["string","null"]},"new":{"type":"integer","minimum":0},"price_drops":{"type":"integer","minimum":0},"relisted":{"type":"integer","minimum":0},"delisted":{"type":"integer","minimum":0},"median_price_drop_amount":{"type":["number","null"]},"median_price_drop_percent":{"type":["number","null"]},"basis":{"type":"string"}},"required":["date","new","price_drops","relisted","delisted","median_price_drop_amount","median_price_drop_percent","basis"]},"window":{"type":"object","properties":{"days":{"const":30},"start":{"type":["string","null"]},"end":{"type":["string","null"]},"new":{"type":"integer","minimum":0},"price_drops":{"type":"integer","minimum":0},"relisted":{"type":"integer","minimum":0},"delisted":{"type":"integer","minimum":0},"median_price_drop_amount":{"type":["number","null"]},"median_price_drop_percent":{"type":["number","null"]},"basis":{"type":"string"}},"required":["days","start","end","new","price_drops","relisted","delisted","median_price_drop_amount","median_price_drop_percent","basis"]},"nhtsa_exposure":{"type":"object","properties":{"level":{"const":"model_year"},"matched_listings":{"type":"integer","minimum":0},"unmatched_listings":{"type":"integer","minimum":0},"with_recall_campaign":{"type":"integer","minimum":0},"with_open_investigation":{"type":"integer","minimum":0},"with_either":{"type":"integer","minimum":0},"share_with_either":{"type":["number","null"],"minimum":0,"maximum":1},"basis":{"type":"string"},"caveat":{"type":"string"}},"required":["level","matched_listings","unmatched_listings","with_recall_campaign","with_open_investigation","with_either","share_with_either","basis","caveat"]},"makes":{"type":"array","items":{"type":"object","properties":{"make":{"type":"string"},"make_key":{"type":"string"},"active_listings":{"type":"integer","minimum":0},"share_of_active":{"type":"number","minimum":0,"maximum":1},"priced_listings":{"type":"integer","minimum":0},"median_price":{"type":["number","null"]},"listings_with_mileage":{"type":"integer","minimum":0},"median_mileage":{"type":["number","null"]}},"required":["make","make_key","active_listings","share_of_active","priced_listings","median_price","listings_with_mileage","median_mileage"]},"maxItems":10},"models":{"type":"array","items":{"type":"object","properties":{"make":{"type":"string"},"make_key":{"type":"string"},"active_listings":{"type":"integer","minimum":0},"share_of_active":{"type":"number","minimum":0,"maximum":1},"priced_listings":{"type":"integer","minimum":0},"median_price":{"type":["number","null"]},"listings_with_mileage":{"type":"integer","minimum":0},"median_mileage":{"type":["number","null"]},"model":{"type":"string"},"family_key":{"type":"string"},"matched_listings":{"type":"integer","minimum":0},"with_either":{"type":"integer","minimum":0}},"required":["make","make_key","active_listings","share_of_active","priced_listings","median_price","listings_with_mileage","median_mileage","model","family_key","matched_listings","with_either"]},"maxItems":15},"trend":{"type":"object","properties":{"window_days":{"const":30},"days_with_data":{"type":"integer","minimum":0},"has_history":{"type":"boolean"},"days":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string"},"new":{"type":"integer","minimum":0},"price_drops":{"type":"integer","minimum":0},"relisted":{"type":"integer","minimum":0},"delisted":{"type":"integer","minimum":0},"net_change":{"type":"integer"},"active_end_of_day":{"type":"integer","description":"Current active inventory minus later net changes; derived, not a stored snapshot."},"median_new_price":{"type":["number","null"]},"new_priced":{"type":"integer","minimum":0},"median_price_drop_amount":{"type":["number","null"]}},"required":["date","new","price_drops","relisted","delisted","net_change","active_end_of_day","median_new_price","new_priced","median_price_drop_amount"]},"maxItems":30},"basis":{"type":"string"},"note":{"type":"string"}},"required":["window_days","days_with_data","has_history","days","basis","note"]},"methodology":{"type":"object","properties":{"counted":{"type":"array","items":{"type":"string"}},"delisted_means":{"type":"array","items":{"type":"string"}},"coverage_notes":{"type":"array","items":{"type":"string"}},"limits":{"type":"array","items":{"type":"string"}}},"required":["counted","delisted_means","coverage_notes","limits"]}},"required":["schema_version","name","status","as_of","generated_from","coverage","inventory","latest_day","window","nhtsa_exposure","makes","models","trend","methodology"]},"WatchEntry":{"type":"object","properties":{"id":{"type":"integer","minimum":0},"make":{"type":"string"},"model":{"type":"string"},"year":{"type":"integer","minimum":2000,"maximum":2027},"created_at":{"type":"string"}},"required":["id","make","model","year","created_at"]},"Watchlist":{"type":"object","properties":{"entries":{"type":"array","items":{"$ref":"#/components/schemas/WatchEntry"}},"limit":{"type":"integer","minimum":0},"remaining":{"type":"integer","minimum":0}},"required":["entries","limit","remaining"]},"RecallChange":{"type":"object","properties":{"id":{"type":"integer","minimum":0},"type":{"enum":["recall","investigation","complaint_count"]},"kind":{"enum":["new","updated","count"]},"ref":{"type":"string"},"make":{"type":"string","minLength":1,"maxLength":64},"model":{"type":"string","minLength":1,"maxLength":64},"year":{"type":"integer","minimum":2000,"maximum":2027},"record_date":{"type":["string","null"],"description":"Date on the NHTSA record (received or opened)."},"observed_date":{"type":"string","format":"date","description":"UTC day this service recorded the change."},"summary":{"type":["string","null"]},"source_url":{"type":"string","format":"uri"},"details":{"type":"object","additionalProperties":true}},"required":["id","type","kind","ref","make","model","year","record_date","observed_date","summary","source_url","details"],"additionalProperties":false},"RecallChanges":{"type":"object","properties":{"changes":{"type":"array","items":{"$ref":"#/components/schemas/RecallChange"}},"next_cursor":{"type":["string","null"]},"feed":{"type":"object","properties":{"last_ingest_at":{"type":["string","null"]},"status":{"enum":["active","no_changes_recorded"]}},"required":["last_ingest_at","status"]},"notes":{"type":"array","items":{"type":"string"}}},"required":["changes","next_cursor","feed","notes"]},"WatchAlerts":{"type":"object","properties":{"alerts":{"type":"array","items":{"type":"object","properties":{"id":{"type":"integer","minimum":0},"type":{"enum":["recall","investigation","complaint_count"]},"kind":{"enum":["new","updated","count"]},"ref":{"type":"string"},"make":{"type":"string","minLength":1,"maxLength":64},"model":{"type":"string","minLength":1,"maxLength":64},"year":{"type":"integer","minimum":2000,"maximum":2027},"record_date":{"type":["string","null"],"description":"Date on the NHTSA record (received or opened)."},"observed_date":{"type":"string","format":"date","description":"UTC day this service recorded the change."},"summary":{"type":["string","null"]},"source_url":{"type":"string","format":"uri"},"details":{"type":"object","additionalProperties":true},"watchlist_entry_id":{"type":"integer","minimum":0}},"required":["id","type","kind","ref","make","model","year","record_date","observed_date","summary","source_url","details","watchlist_entry_id"],"additionalProperties":false}},"next_cursor":{"type":["string","null"]},"resume_cursor":{"type":["string","null"]},"watchlist_size":{"type":"integer","minimum":0},"notes":{"type":"array","items":{"type":"string"}}},"required":["alerts","next_cursor","resume_cursor","watchlist_size","notes"]},"ListingEvent":{"type":"object","properties":{"id":{"type":"integer","minimum":0},"event_date":{"type":"string","format":"date"},"event_type":{"enum":["new","price_drop","relisted","delisted"]},"vin":{"type":"string","pattern":"^[A-HJ-NPR-Z0-9]{17}$"},"make":{"type":"string","minLength":1,"maxLength":64},"model":{"type":"string","minLength":1,"maxLength":64},"year":{"type":"integer","minimum":2000,"maximum":2027},"price_old":{"type":["number","null"]},"price_new":{"type":["number","null"]},"mileage":{"type":["number","null"]},"listing_url":{"type":"string","format":"uri"},"source":{"type":"string"}},"required":["id","event_date","event_type","vin","make","model","year","price_old","price_new","mileage","listing_url","source"],"additionalProperties":false},"ListingChanges":{"type":"object","properties":{"events":{"type":"array","items":{"$ref":"#/components/schemas/ListingEvent"}},"next_cursor":{"type":["string","null"]},"collectors":{"type":"object","properties":{"status":{"enum":["no_active_sources","active"]},"sources_active":{"type":"integer","minimum":0},"last_run_at":{"type":["string","null"]}},"required":["status","sources_active","last_run_at"]},"notes":{"type":"array","items":{"type":"string"}}},"required":["events","next_cursor","collectors","notes"]}}}}