Documentation

apicars.auction API reference

A JSON API that serves publicly listed auction data from Copart®, IAAI® and Emirates Auction in one consistent schema. Base URL https://apiauctions.io. All v1 and v2 endpoints authenticate with an Authorization: Bearer token and return application/json.

Quickstart

Fetch a vehicle and its full cross-auction history in one call.

POST /api/v1/get-car-vin
curl -X POST "https://apiauctions.io/api/v1/get-car-vin?vin_number=JN1EV7AR1KM551307" \
  -H "Authorization: Bearer YOUR_TOKEN"
import requests

resp = requests.post(
  "https://apiauctions.io/api/v1/get-car-vin",
  headers={"Authorization": "Bearer YOUR_TOKEN"},
  params={
    "vin_number": "JN1EV7AR1KM551307",
  },
)
vehicle = resp.json()

Authentication

The primary way to authenticate v1 and v2 requests is the Authorization: Bearer <token> header. As a legacy fallback for older integrations, the same token is also accepted as an ?api_token=<token> query parameter — both forms are handled by the same middleware. Keep the token server-side; never ship it in a browser bundle.

curl -X POST "https://apiauctions.io/api/v2/get-auctions" \
  -H "Authorization: Bearer YOUR_TOKEN"
MethodPathDescription
POST/api/v1/get-car-vinFull vehicle + cross-auction history
POST/api/v2/get-active-lotsSearch active lots
POST/api/v2/get-original-photosOriginal photo set (passthrough URLs)
POST/api/v2/vin-decodingDecode a VIN
POST/api/v2/get-auctionsList indexed auction sources
POST /api/v1/get-car-vin

Get vehicle by VIN

Returns vehicle attributes plus every indexed lot across Copart, IAAI and Emirates. All parameters travel on the query string.

Query parameters
Authorizationrequiredheader

Bearer YOUR_TOKEN. Legacy ?api_token= query also accepted.

vin_numberrequiredstring

17-character Vehicle Identification Number.

only_with_colorint (0 / 1)

If 1, return only history entries where color is non-null. Default 0.

200 — response
{
  "vin": "JN1EV7AR1KM551307",
  "make": "INFINITI",
  "model": "Q50 3.0T SPORT",
  "year": 2019,
  "history": [
    {
      "auction_name": "COPART",
      "lot_id": "79217025",
      "sale_status": "Active"
    },
    {
      "auction_name": "IAAI",
      "final_bid": 8650
    }
  ]
}
POST/api/v2/vin-decoding

Decode VIN

Decode a single VIN into structured make/model/engine/body/year. Does not consult the auction index.

curl -X POST "https://apiauctions.io/api/v2/vin-decoding?vin=WDDGF8AB1EA960217" \
  -H "Authorization: Bearer YOUR_TOKEN"

Errors

Errors follow RFC 7807 (application/problem+json).

StatusCodeMeaning
401unauthenticatedMissing or invalid token
402payment_requiredPack exhausted; top up or buy a pack
404not_foundNo record for that VIN or lot
422validation_errorBad parameter shape
429rate_limitedSlow down; honor Retry-After

Rate limits

Limits are per plan and surfaced in X-RateLimit-* headers. Free: 10 req/hour. Active Lots Pro: 3 RPS. PAYG: 5 RPS. Pack 100k: 2 RPS. Pack 1M: 3 RPS.