Skip to main content
POST /v1/sessions A live lookup costs a round trip to the dealer. When you know which VINs a conversation is about — a shopper’s shortlist, the three cars in a comparison, an appointment’s vehicle — warm them first. The session fetches them in the background and GET /v1/vehicles/vin/{vin}/live then answers from the warm store in tens of milliseconds instead of hundreds. Returns 202 Accepted immediately. The fetches have not finished when you get the response; poll GET /v1/sessions/{session_id} or simply start calling /live and take whatever is ready.

Request

What gets stored, and for how long

ttl_s is 600 seconds. After that the warm records expire and /live goes back to fetching. Sessions are per API key.
Only live and gone outcomes are stored. A fetch that timed out or was blocked is not written to the warm store, so a prewarmed answer is never a dressed-up failure — if warming failed, the later /live call simply does the work itself.
Fetches are spaced to the same per-host interval a normal live call respects, so warming 25 VINs at one dealer does not hammer them; different dealers are warmed concurrently.

Cost

Each warmed VIN is one live fetch. A 10-VIN session costs the same as 10 live calls — prewarming trades latency for nothing else. Warmed VINs are counted separately in usage so you can see them apart from direct calls.