Chrono24 Search API Documentation Search luxury watch listings on Chrono24. Search by keyword, or by brand with a model or reference. Filter by price, condition, year, seller country and dealer, and sort by price or newest. Every item has the price as a number with currency, the formatted price, shipping note, seller type, seller country and city, certified flag, badges and photos in full size. The response has the total number of results, the page and whether a next page exists. meta.resolved_to shows the brand and model Chrono24 resolved your search to. Every returned item matches your price and seller country filters. Chrono24 repeats a few promoted offers (badge promoted) on several pages. The German site returns German text in title, subtitle and location. Prices are asking prices. Chrono24 publishes no sold prices, no sold flag and no listing date, so they are not returned. Cost: 1 credit per request. A page above 1 needs one extra page lookup when its page links are not cached, so it costs 2 credits (meta.credits shows the charge). Empty results and failed requests are not billed.
Run this endpoint
Endpoint
Parameters
Start with the required fields, then add optional filters only when your use case needs them.
Runnable path
This endpoint has no required query parameters.
13 optional filters available.
string
Optional
Free text search, e.g. rolex submariner. Chrono24 matches titles only. Optional when you send brand, model, reference or dealer_id.
coffee shops
string
Optional
Brand name as written on Chrono24, e.g. Omega. A brand that Chrono24 does not know returns an empty result.
example
string
Optional
Model name, e.g. Speedmaster. Send it with the brand.
example
string
Optional
Reference number, e.g. 126610LN. Send it with the brand for an exact reference page.
example
integer
Optional
Lowest asking price in the currency of the site.
10
integer
Optional
Highest asking price in the currency of the site.
10
string
Optional
new or used. Search items echo this filter in their condition field, which is null without it. The listing endpoint always has the real condition.
example
integer
Optional
Year of production, e.g. 2020.
10
string
Optional
Two letter country code of the seller, e.g. DE, US or GB. Items whose card shows no country are kept. Items from other countries are not returned.
example
integer
Optional
Inventory id of one dealer (dealer.inventory_id of a listing). Returns the active listings of that dealer.
1234567890
string
Optional
relevance (default), price-asc, price-desc or newest.
relevance
integer
Optional
Page number from 1 to 100. Each page has up to 60 items.
1
string
Optional
Chrono24 site: com (USD, default), co.uk (GBP) or de (EUR). The site sets the currency.
US
Response Schema
Example response fields are illustrative; inspect the JSON before integrating.
Example response fields
Scan these fields before integrating.
data
meta
success
{
"data": {
"site": "com",
"items": [
{
"id": 48929642,
"url": "https://www.chrono24.com/omega/speedmaster--id48929642.htm",
"brand": "Omega",
"price": 114,
"title": "Omega Speedmaster",
"badges": [],
"images": [
"https://img.chrono24.com/images/uhren/xbh9dqxo80wr-j62cc9n0uprgj48qc5odgfdf-ExtraLarge.jpg",
"https://img.chrono24.com/images/uhren/f4oulh06h0r5-1smtb5lvgnp0ff5ue0co6oct-ExtraLarge.jpg"
],
"currency": "USD",
"location": "Italy",
"subtitle": "Scatola anni 80",
"certified": false,
"condition": null,
"image_count": 2,
"seller_type": "private",
"availability": "in_stock",
"shipping_note": "Plus shipping",
"price_formatted": "$114",
"location_country": "IT"
}
],
"filters": {
"sort": "price-asc",
"brand": "Omega",
"model": "Speedmaster",
"price_max": 8000
},
"currency": "USD",
"price_low": 114,
"pagination": {
"page": 1,
"has_next": true,
"last_page": 123,
"page_size": 60,
"total_results": 7326
},
"price_high": 1962,
"items_count": 60
},
"meta": {
"credits": 4,
"fetches": 1,
"billable": true,
"resolved_to": {
"brand": "Omega",
"model": "Speedmaster"
},
"endpoint_family": "search"
},
"success": true
}
Errors
Handle these documented responses before retrying or showing customer-facing failures.
Validation Error
A query parameter is missing or invalid. This response is not billable.
{
"errors": {
"query": [
"Send at least one of query, brand, model, reference or dealer_id."
]
},
"message": "The request validation failed"
}Page Out Of Range
The page is higher than the last page of this search. This response is not billable.
{
"meta": {
"billable": false,
"retryable": false,
"endpoint_family": "search"
},
"error": {
"code": "INVALID_REQUEST",
"message": "This search has 123 page(s). Send a page up to 123."
},
"success": false
}Upstream Unavailable
Chrono24 did not answer after the internal retries. This response is not billable. Retry in a moment.
{
"meta": {
"billable": false,
"retryable": true,
"endpoint_family": "search"
},
"error": {
"code": "UPSTREAM_UNAVAILABLE",
"message": "Chrono24 is temporarily unavailable. Please retry. This request was not charged."
},
"success": false
}Generate Code with AI
Copy a ready-made prompt with all the endpoint details, parameters, and example responses. Paste it into ChatGPT, Claude, or any AI assistant to instantly generate working code.
Try It Live
Test this endpoint in our interactive playground with real data.