API reference / Vehicles
Search active auction vehicles
/carsPage size 50 / 1000Search vehicles with active Copart or IAAI listings. Use it for sourcing, importer inventory, monitoring and market analysis.
- Filter by source, manufacturer, model, generation, year, mileage, price, location, damage and auction details. All query parameters are optional.
- The default page size is 50 on every plan; the maximum is 1000 on Unlimited. Vehicles are ordered by internal ID, ascending by default. Use minutes for updates within the last 4320 minutes (72 hours) and
/archived-lotsto track removals. - Returns vehicles in data, with pagination in links and meta. Each vehicle includes specifications and a lots array with source identifiers, photos, mileage, prices, auction dates and condition where available. Add
prices_history=1to include each lot's prices array. - An active listing does not guarantee that bidding is open. See
exclude_expired_auctionsfor a current implementation limitation.
- Change the values below
- The request on the right updatesThe request above updates
- Run it live with your key
Query parameters 46
Source platform ID: 1 = IAAI, 3 = Copart. Omit to search every source available to your account. Filters matching vehicles; their nested lots may include other sources.
Vehicles or listings updated within the last N minutes. Use 1–4320 (up to 72 hours), for example 60. Omit for the normal feed.
Records per page. Omit for 50. Maximum 1000 on Unlimited; Demo and Small are limited to 50.
Page number, starting at 1. Omit to request page 1.
Set 1 to skip total counts, or 0 to include them. Omit to use your account default. Simple pagination suits large synchronizations.
Order vehicles by internal car ID: asc (default) or desc. It does not sort by auction time or price.
Set 1 to include the prices history array for each lot. Omit or use 0 for the standard response.
One manufacturer ID or comma-separated IDs from /manufacturers/{type}, for example 16 (BMW) or 16,20. Send one string, not an array.
Internal model ID from /models/{manufacturer_id}/{type}.
Internal generation ID from /generations/{model_id}/{type}.
Exact model year, for example 2020. On /cars it is applied together with any year range.
Minimum model year, inclusive. Can be combined with to_year.
Maximum model year, inclusive. Can be combined with from_year.
A VIN (case-insensitive stored-value match) or a source lot number. For a VIN-only filter use vin; for an active and archived lookup use /search-vin or /search-lot.
Case-insensitive VIN filter. Use _ as a multi-character wildcard: YV1MC_ matches VINs that start with YV1MC. Without a wildcard it matches the full stored value.
Case-insensitive substring of the vehicle title, for example Corvette.
Vehicle category ID. See the accepted values below.
Body type ID. See the accepted values below.
Exterior color ID. See the accepted values below.
Fuel type ID. See the accepted values below.
Transmission ID: 1 = automatic, 2 = manual.
Drivetrain ID: 1 = rear, 2 = front, 3 = all.
Listing condition ID. See the accepted values below.
Exact engine cylinder count, for example 4, 6 or 8.
Case-insensitive substring of the engine name, for example 2.0.
Two-letter vehicle-location country code, for example US or CA. Omit to include all available countries.
State or province code from /usa/states, for example CA or FL. Case-insensitive; combine with country to tell locations with the same code apart.
Case-insensitive substring of a primary or secondary damage name from /usa/damages, for example hail or front. Send a scalar string. If no dictionary damage matches, the filter is not applied.
Case-insensitive substring of a document-title name from /usa/titles, for example salvage. Checks the listing, detailed and short title. If no dictionary title matches, the filter is not applied.
Auction status ID. See the accepted values below. For several statuses use status[] instead; do not send both.
Several auction-status IDs (1–10) as repeated bracketed keys, for example status[]=4&status[]=5. Use instead of status. Do not send status=[] or a JSON string.
Set 1 to require a positive Buy Now price. 0 or omission leaves Buy Now unfiltered.
Minimum Buy Now price, inclusive (1 or more, decimals accepted). Amounts use stored source-price units without conversion or fees.
Maximum Buy Now price, inclusive (1 or more, decimals accepted). Amounts use stored source-price units without conversion or fees.
Minimum stored bid, inclusive (1 or more, decimals accepted). This is not the final-sale amount.
Maximum stored bid, inclusive (1 or more, decimals accepted). This is not the final-sale amount.
Minimum recorded odometer reading in kilometers, inclusive. If kilometer and mile filters are both set, both must match.
Maximum recorded odometer reading in kilometers, inclusive. If kilometer and mile filters are both set, both must match.
Minimum recorded odometer reading in miles, inclusive. If kilometer and mile filters are both set, both must match.
Maximum recorded odometer reading in miles, inclusive. If kilometer and mile filters are both set, both must match.
Auction date strictly after this calendar date (YYYY-MM-DD). The time part is ignored. Overrides sale_date_in_days; ignored with without_sale_date=1.
Auction date strictly before this calendar date (YYYY-MM-DD). The time part is ignored. Ignored with without_sale_date=1.
Lots whose auction date is later than N days ago, including future dates. Overridden by sale_date_from; ignored with without_sale_date=1.
Auction timestamps between now and N hours from now, inclusive, for example 24. Combined with the other enabled date filters.
Set 1 to select lots with no sale date. It overrides sale_date_from, sale_date_to and sale_date_in_days.
Current implementation limitation: despite its name, 1 selects lots with no sale date or a sale date earlier than now, so it does not exclude past auctions. Omit it or use 0; use next_hours_auction for an upcoming window.