Get Auction Bids
Retrieve paginated bid history for live or completed Bring a Trailer, Cars & Bids, Hemmings, Hagerty, PCAR Market, All Collector Cars, and Sotheby's Motorsport auctions where bid data is available. Use the id returned by Get Auctions or Get Live Auctions as auction_id.
https://api.oldcarsdata.com/auctions/{auction_id}/bidsBeta7 bid-history sourcesView coverage
Coverage is actively evolving. Use the source slug when filtering API or MCP requests.
- Bring a Trailer
bringatrailer - Cars & Bids
carsandbids - Hemmings
hemmings - Hagerty
hagerty - PCAR Market
pcarmarket - All Collector Cars
acc - Sotheby's Motorsport
sothebysmotorsport
Child resource
This endpoint is scoped to a single auction. It returns the full bid history as its own paginated collection instead of embedding bids inside auction search results.
Authentication
This endpoint requires authentication. Include your API key in the Authorization header:
Authorization: Bearer YOUR_API_KEYRequest Parameters
| Field | Type | Required | Description |
|---|---|---|---|
Authorization# | header | Yes | Bearer token with your API key: Bearer YOUR_API_KEY |
auction_id# | path integer | Yes | Auction ID returned by Get Auctions or Get Live Auctions. Bid history is returned when available for supported Bring a Trailer, Cars & Bids, Hemmings, Hagerty, PCAR Market, All Collector Cars, and Sotheby's Motorsport auctions. |
bid_after# | date-time | No | Only include bids placed at or after this ISO 8601 timestamp. |
bid_before# | date-time | No | Only include bids placed at or before this ISO 8601 timestamp. |
sort# | enum | No | Sort field. Options: "bid_at" (default), "amount", "created". |
direction# | enum | No | Sort direction. Options: "asc" (default), "desc". |
page# | integer | No | Page number for pagination. Minimum: 1, default: 1. |
limit# | integer | No | Number of bids per page. Range: 1-100, default: 100. |
Code Examples
Full bid history (cURL)
curl "https://api.oldcarsdata.com/auctions/98765/bids" \
-H "Authorization: Bearer YOUR_API_KEY"Cars & Bids example (cURL)
curl "https://api.oldcarsdata.com/auctions/20410/bids?limit=10&sort=amount&direction=desc" \
-H "Authorization: Bearer YOUR_API_KEY"Recent bids (cURL)
curl "https://api.oldcarsdata.com/auctions/98765/bids?bid_after=2026-05-03T00:00:00Z&sort=bid_at&direction=asc" \
-H "Authorization: Bearer YOUR_API_KEY"JavaScript
const auctionId = 98765;
const params = new URLSearchParams({
sort: 'bid_at',
direction: 'asc',
limit: '100',
});
const response = await fetch(
`https://api.oldcarsdata.com/auctions/${auctionId}/bids?${params}`,
{
headers: {
'Authorization': 'Bearer YOUR_API_KEY'
}
}
);
const data = await response.json();Python
import requests
response = requests.get(
'https://api.oldcarsdata.com/auctions/98765/bids',
params={'sort': 'bid_at', 'direction': 'asc', 'limit': 100},
headers={'Authorization': 'Bearer YOUR_API_KEY'}
)
data = response.json()Success Response (200)
Bid history retrieved successfully.
{
"data": [
{
"id": 12345,
"auction_id": 98765,
"bidder_name": "user123",
"amount": 25000,
"currency": "USD",
"bid_at": "2026-05-03 18:42:11.000",
"created_at": "2026-05-03 18:43:02.000"
}
],
"meta": {
"total": 42,
"page": 1,
"limit": 100,
"total_pages": 1
}
}Response Fields
| Field | Type | Description |
|---|---|---|
data# | array | Array of bid objects. |
data[].id# | number | null | Unique bid identifier. |
data[].auction_id# | number | null | Auction ID this bid belongs to. |
data[].bidder_name# | string | null | Bidder username as reported by the auction source. |
data[].amount# | number | null | Bid amount. |
data[].currency# | string | null | ISO 4217 currency code, such as "USD" or "CAD". |
data[].bid_at# | string | null | Bid placement wall-clock timestamp in YYYY-MM-DD HH:mm:ss[.ffffff] format when available. No UTC offset is included. |
data[].created_at# | string | null | Record creation wall-clock timestamp in YYYY-MM-DD HH:mm:ss[.ffffff] format. No UTC offset is included. |
meta# | object | Pagination metadata. |
meta.total# | number | Total number of matching bids. |
meta.page# | number | Current page number. |
meta.limit# | number | Number of bids per page. |
meta.total_pages# | number | Total number of pages. |
Error Responses
400Invalid requestCheck required values and accepted formats.401UnauthorizedAdd a valid Bearer API key.403Access deniedVerify your email and confirm plan access.429Rate limit reachedWait for the reset window before retrying.| Field | Type | Description |
|---|---|---|
error# | string | Error type identifier, such as "Validation Error" or "HTTP Error". |
message# | string | Human-readable error message. |
details# | object | Validation error details on 400 responses. Keys are field names, values are arrays of error messages. |
400 — Validation Error:
{
"error": "Validation Error",
"message": "auctionId: Number must be greater than 0",
"details": {
"auctionId": ["Number must be greater than 0"]
}
}401 — Unauthorized:
{
"error": "Unauthorized",
"message": "API key is required. Provide it via Authorization: Bearer <key> header"
}Try this request
/auctions/98765/bids?sort=bid_at&direction=ascEdit request3 parameters
curl "https://api.oldcarsdata.com/auctions/98765/bids?sort=bid_at&direction=asc" \
-H "Authorization: Bearer $OCD_API_KEY"{
"data": [
{
"amount": 72000,
"bid_at": "2026-05-04 18:42:11",
"bidder_username": "collector_911"
}
]
}Get Live Auctions
List currently active Bring a Trailer, Cars & Bids, Hemmings, Hagerty, PCAR Market, All Collector Cars, Gooding & Co, RM Sotheby's, Sotheby's Motorsport, Car & Classic, The Market, MB Market, Mecum Auctions, and PistonHeads collector car auctions with ending windows, source filters, polling filters, and current listing data. Live auctions are currently in beta.
Get Stats
Get price, sell-through, and 12-month trend stats for a normalized vehicle make and optional model. Requires a paid plan.