CLASSIC.COM Developer Documentation

Lot Data Ingestion API

Specifications for the REST API endpoints that customers need to implement for CLASSIC.COM to capture external lots from different venues or auctions during the onboarding process.

Authentication

We encourage protecting these endpoints and recommend doing so with an API Key. We would supply the API key as part of the request header:

x-api-key: <unique_api_key>

If you have a preferred authentication method, let CLASSIC.COM know and we can discuss integrating with your preferred method.


Endpoints

GET List Lots

This endpoint serves a list of lots.

Note: This could be a subset of data returned. CLASSIC.COM can query lot details to retrieve all lot information.

Endpoint URL

GET /api/lots

Query Parameters

NameTypeRequiredDescriptionAllowed Values
statusstringNoFilter by car statusavailable, sold, not_sold, withdrawn
auction_idstringYes*Filter by specific auction IDAny string
pagestringNoPagination pageAny string
limitstringNoNumber of results per pageAny string

Note: auction_id is optional for online auctions.

Request Example

GET /api/lots?auction_id=123456&status=available

Response Example

[
  {
    "uid": "0Bn4A8l6zlB9p75K",
    "lot_id": "25",
    "vin": "WP0AC2995TS376002",
    "title": "1996 Porsche 911 Turbo",
    "year": 1996,
    "make": "Porsche",
    "model": "911",
    "submodel": "Turbo",
    "trim": "Base",
    "body_style": "Coupe",
    "odometer": 50000,
    "odometer_type": "mi",
    "total_mileage_unknown": false,
    "exterior_color": "Red",
    "interior_color": "Black",
    "doors": 2,
    "engine": "3.6L Flat 6 Turbo",
    "transmission_type": "Manual",
    "description": "This 1996 Porsche 911 Turbo is a well-maintained example with low mileage.",
    "options": "Sunroof, Leather seats",
    "url": "http://example.com/vehicle/25",
    "country": "USA",
    "city": "Miami",
    "state": "FL",
    "zipcode": "33129",
    "main_image": "http://example.com/images/vehicle_main.jpg",
    "images": [
      "http://example.com/images/vehicle1.jpg",
      "http://example.com/images/vehicle2.jpg"
    ],
    "status": "AVAILABLE",
    "lot_date": "2025-07-20",
    "price": 120000,
    "currency": "USD"
  }
]

GET Get Lot Details

This endpoint serves detailed information for an individual lot, identified by the uid. This allows direct querying of lots without going through the index.

Endpoint URL

GET /api/{uid}

Path Parameters

NameTypeRequiredDescriptionAllowed Values
uidstringYesUID of the lotuid

Request Example

GET /api/0Bn4A8l6zlB9p75K

Response Example

{
  "uid": "0Bn4A8l6zlB9p75K",
  "lot_id": "25",
  "vin": "WP0AC2995TS376002",
  "title": "1996 Porsche 911 Turbo",
  "year": 1996,
  "make": "Porsche",
  "model": "911",
  "submodel": "Turbo",
  "trim": "Base",
  "body_style": "Coupe",
  "odometer": 50000,
  "odometer_type": "mi",
  "total_mileage_unknown": false,
  "exterior_color": "Red",
  "interior_color": "Black",
  "doors": 2,
  "engine": "3.6L Flat 6 Turbo",
  "transmission_type": "Manual",
  "description": "This 1996 Porsche 911 Turbo is a well-maintained example with low mileage.",
  "options": "Sunroof, Leather seats",
  "url": "http://example.com/vehicle/25",
  "country": "USA",
  "city": "Miami",
  "state": "FL",
  "zipcode": "33129",
  "main_image": "http://example.com/images/vehicle_main.jpg",
  "images": [
    "http://example.com/images/vehicle1.jpg",
    "http://example.com/images/vehicle2.jpg"
  ],
  "status": "AVAILABLE",
  "lot_date": "2025-07-20",
  "price": 120000,
  "currency": "USD"
}

GET List Auctions

This endpoint serves a list of auctions.

Endpoint URL

GET /api/auctions

Query Parameters

NameTypeRequiredDescriptionAllowed Values
pagestringNoPagination pageAny string
limitstringNoNumber of results per pageAny string

Request Example

GET /api/auctions

Response Example

[
  {
    "id": "MPG17V8JaXbyDrY4",
    "auction_id": "123456",
    "title": "Summer Classic Car Auction",
    "start_date": "2025-06-01",
    "end_date": "2025-06-10",
    "city": "Miami",
    "state": "FL",
    "zipcode": "33129",
    "country": "USA"
  }
]

Lot Data Structure

Field NameTypeRequiredDescriptionNotes
uidString | NumberYesUnique identifier of the lot.
lot_idString | NumberNoNon-unique identifier if available. E.g. lot number.Recommended to align with lot number or ID on auction site.
vinStringYes17-digit VIN, or Chassis number if pre-1981.
titleStringNo*Title or name of the lot.Required if year, make, and model are not provided.
yearIntegerNo*Model year (1975, 1995, 2005, etc).Required if title is not provided.
makeStringYes*Manufacturer.Required if title is not provided.
modelStringYes*Model.Required if title is not provided.
submodelStringNoSub model.
trimStringNoTrim.
body_styleStringNoBody style (Coupe, Sedan, SUV, etc).
odometerIntegerNoNumber of miles or kilometers displayed (odometer number reading).
odometer_unitStringNoOdometer unit (mi / km).
total_mileage_unknownBooleanNoTotal mileage unknown (true / false).
exterior_colorStringNoExterior color.
interior_colorStringNoInterior color.
doorsIntegerNoNumber of doors (2, 4, etc).
engineStringNoEngine short description (5.0L V8, 6.5L V12, Turbo 3.6L Flat 6, etc).
transmission_typeStringNoTransmission type (Automatic or Manual).
descriptionStringYesDescription of the car being sold.
optionsStringNoOptions available on the car. Could be factory installed or subsequent upgrades installed by previous owner(s).
urlStringYesDirect link to auction website for this listing.
locationStringNo*Location of the lot; can be the auction venue location.Required if city, state, and zipcode are not provided.
cityStringNo*City where the car is located.Required if location is not provided.
stateStringNo*State where the car is located (if US).Required if location is not provided.
zipcodeStringNoZip code where the car is located (if US).Required if location is not provided.
countryStringNoCountry where the car is located.
main_imageStringYesURL for primary image for the listing (no banners or watermarks).Preferred method for main image. Recommended resolution: 2400 × 1800 px.
imagesList<String>YesURLs for all other images in the listing (comma-separated).Recommended resolution: 2400 × 1800 px.
statusStringYesStatus of the listing.FOR_SALE, SOLD, NOT_SOLD, HIGH_BID, WITHDRAWN
lot_dateStringYesThe date that the auction ends.Format: YYYY-MM-DD
priceIntegerYesFinal sold price if SOLD, or final bid amount if HIGH_BID.
currencyStringYesThe currency of the price in standard 3-letter code.USD, CAD, EUR, GBP, etc.