# Chrono24 Search API Documentation

<p><strong>Chrono24 Search API Documentation</strong> 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.</p>

- **Documentation:** [https://scrappa.co/docs/chrono24-api/chrono24_search](https://scrappa.co/docs/chrono24-api/chrono24_search)
- **API group:** Chrono24 API
- **Endpoint:** `GET https://scrappa.co/api/chrono24/search`

## Authentication

Send your Scrappa API key in the `X-API-KEY` request header. Paid endpoints also support accountless x402 payments when called without an API key.

## Parameters

| Parameter | Type | Required | Description |
| --- | --- | --- | --- |
| `query` | string | No | Free text search, e.g. rolex submariner. Chrono24 matches titles only. Optional when you send brand, model, reference or dealer_id. |
| `brand` | string | No | Brand name as written on Chrono24, e.g. Omega. A brand that Chrono24 does not know returns an empty result. |
| `model` | string | No | Model name, e.g. Speedmaster. Send it with the brand. |
| `reference` | string | No | Reference number, e.g. 126610LN. Send it with the brand for an exact reference page. |
| `price_min` | integer | No | Lowest asking price in the currency of the site. |
| `price_max` | integer | No | Highest asking price in the currency of the site. |
| `condition` | string | No | 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. |
| `year` | integer | No | Year of production, e.g. 2020. |
| `seller_country` | string | No | 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. |
| `dealer_id` | integer | No | Inventory id of one dealer (dealer.inventory_id of a listing). Returns the active listings of that dealer. |
| `sort` | string | No | relevance (default), price-asc, price-desc or newest. |
| `page` | integer | No | Page number from 1 to 100. Each page has up to 60 items. |
| `country` | string | No | Chrono24 site: com (USD, default), co.uk (GBP) or de (EUR). The site sets the currency. |

## Example response

```json
{
    "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

| Status | Error | Description |
| --- | --- | --- |
| 422 | Validation Error | A query parameter is missing or invalid. This response is not billable. |
| 422 | Page Out Of Range | The page is higher than the last page of this search. This response is not billable. |
| 503 | Upstream Unavailable | Chrono24 did not answer after the internal retries. This response is not billable. Retry in a moment. |

## More Scrappa resources

- [API documentation](https://scrappa.co/docs)
- [Full LLM-readable API reference](https://scrappa.co/llms-full.txt)
- [OpenAPI specification](https://scrappa.co/docs/api.json)
- [Pricing](https://scrappa.co/pricing)
