Discover/EveryWatch API
live

EveryWatch APIeverywatch.com ↗

Search watch models and retrieve hammer prices from 500+ auction houses via the EveryWatch API. Access auction results, price history, and portfolio data.

Endpoint health
verified 20h ago
get_price_history
get_portfolio_tracker
get_auction_results
search_models
4/4 passing latest checkself-healing
Endpoints
4
Updated
19d ago

What is the EveryWatch API?

The EveryWatch API exposes 4 endpoints covering watch model search, completed auction results, portfolio tracker data, and price history charts aggregated from over 500 auction houses. The get_auction_results endpoint returns paginated realized hammer prices with provenance details, multi-currency FX metadata, and sold/unsold status, filterable by date range, auction house, and reference identifier.

This call costs1 credit / call— charged only on success
Try it
Search query for watch brand, model, or reference number (e.g. 'Rolex Daytona', 'Omega Speedmaster', 'Patek Philippe 5711'). Supports composite queries with separators: ' / ' (slash), ';' (semicolon), newline, ' & ', or ' and ' to search multiple brands independently (e.g. 'AKRIVIA / Rexhep Rexhepi').
→ api.parse.bot/scraper/45ca4080-79bb-4066-8d81-413cb494cfac/<endpoint>
Ready to send
Fill in the parameters and hit sign in to send to see live response data here.
Call it over HTTPgrab a free API key at signup
curl -X GET 'https://api.parse.bot/scraper/45ca4080-79bb-4066-8d81-413cb494cfac/search_models?query=Rolex+Daytona' \
  -H 'X-API-Key: $PARSE_API_KEY'
All endpoints · 4 totalmissing one? ·

Search for watch models and references by keyword. Returns matching models with their slugs (used by get_auction_results), brand/model identifiers, and listing/historical counts. Up to 15 results per query. Supports composite queries: multiple brand names separated by ' / ', ';', newline, ' & ', or ' and ' are searched independently and results are returned as a deduplicated union with brand-level rows prioritized for each component. Each result includes an entity_level field ('brand', 'model', or 'reference') indicating the granularity of the match.

Input
ParamTypeDescription
queryrequiredstringSearch query for watch brand, model, or reference number (e.g. 'Rolex Daytona', 'Omega Speedmaster', 'Patek Philippe 5711'). Supports composite queries with separators: ' / ' (slash), ';' (semicolon), newline, ' & ', or ' and ' to search multiple brands independently (e.g. 'AKRIVIA / Rexhep Rexhepi').
Response
{
  "type": "object",
  "fields": {
    "total": "integer count of results returned",
    "results": "array of matching watch models with slug, counts, entity identifiers, and entity_level ('brand', 'model', or 'reference')"
  },
  "sample": {
    "data": {
      "total": 15,
      "results": [
        {
          "slug": "/rolex/daytona",
          "brand_id": "257",
          "model_id": "1883",
          "image_url": "https://ew-s3-image.s3.eu-west-1.amazonaws.com/media/2023/05/20/media/webp/rolex-chronograph-1165091250169_320w.webp",
          "brand_name": "Rolex",
          "model_name": "Daytona",
          "total_count": 170386,
          "reference_id": null,
          "listing_count": 18530,
          "reference_name": null,
          "matching_string": "Rolex Daytona",
          "historical_count": 151856
        }
      ]
    },
    "status": "success"
  }
}

About the EveryWatch API

Endpoints and What They Return

The search_models endpoint accepts a keyword query — brand name, model name, or reference number — and returns up to 15 matching watch models, each carrying a slug, entity-level classification (brand, model, or reference), and listing and historical counts. The slug from these results is the required input for get_auction_results. Composite queries using /, or ; separators are supported for multi-brand lookups.

Auction Results and Filtering

get_auction_results accepts a slug and returns paginated auction records up to 192 per page. Each record includes identity fields such as reference_id and reference_number, realized pricing with provenance, and FX metadata in multiple currencies. Client-side filters cover date_from, date_to, sold_status (sold or unsold), auction_house (case-insensitive substring match on organization_name), and reference_id for narrowing to an exact reference. The total_records field reflects the server-side count for the model; returned_count reflects what survives any applied filters. The filters_applied object confirms which parameters were active.

Portfolio Tracker and Price History

get_portfolio_tracker looks up a watch by reference number and/or model string and returns the candidate list the EveryWatch portfolio add-watch page surfaces — including images (image_120, image_original, image_without_bg), attribute_options (case material, dial color, bracelet material with per-option counts), and a usable slug for further queries. get_price_history returns the Watch Performance chart data for the same lookup, exposing first_value, current_value, and latest_price objects that each carry dealer and auction values in USD, EUR, GBP, and CHF. The period parameter controls the chart window; max returns the full available history.

Reliability & maintenanceVerified

The EveryWatch API is a managed, monitored endpoint for everywatch.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when everywatch.com changes and a check fails, the API is automatically queued for repair and re-verified. It is built to keep working as the site underneath it changes.

This isn't an official everywatch.com API — it's an independent, maintained REST wrapper over public data. Where the source has no official API (or only a limited one), Parse gives you a stable contract over a source that never promised one, and keeps it current. Need a new endpoint or field? You can revise it yourself in plain English and the agent rebuilds it against the live site in minutes — contributing the change back to the shared API is free.

Last verified
20h ago
Latest check
4/4 endpoints passing
Maintenance
Monitored & self-healing
Will this API break when the source site changes?+
It's built not to. Every endpoint is health-checked on a schedule with automated test probes. When the source site changes and a check fails, the API is automatically queued for repair and re-verified — that's the self-healing layer. Each API page shows when its endpoints were last verified. And because marketplace APIs are shared, any fix reaches everyone using it.
Is this an official API from the source site?+
No — Parse APIs are independent, managed REST wrappers over publicly available data. That is the point: where a site has no official API (or only a limited one), Parse gives you a maintained, monitored endpoint for that data and keeps it working as the site changes — so you get a stable contract over a source that never promised one.
Can I fix or extend this API myself if I need a new endpoint or field?+
Yes — and you don't have to wait on us. This API was generated by the Parse agent, which stays attached. Describe the change in plain English ("add an endpoint that returns reviews", "fix the price field") in the revise box on the API page or via the revise_api MCP tool, and the agent rebuilds it against the live site in minutes. Contributing the change back to the public API is free.
What happens if I call an endpoint that has an issue?+
Errors are machine-readable: a bad call returns a clean status with the list of available endpoints and a repair hint, so an agent (or you) can recover or trigger a fix instead of failing silently. Confirmed failures feed the automatic repair queue.
Common use cases
  • Track realized hammer prices across 500+ auction houses for a specific Rolex reference using get_auction_results with a reference_id filter.
  • Compare dealer median market price to historical auction prices for a watch using get_price_history latest_price and current_value fields.
  • Build a watch valuation tool by retrieving multi-currency auction_value and dealer_value data from get_price_history.
  • Filter auction results to a specific auction house using the auction_house substring parameter to analyze house-specific pricing trends.
  • Look up dial color, case material, and bracelet options for a reference using get_portfolio_tracker attribute_options.
  • Identify how many total auction records exist for a model versus a specific reference using total_records from get_auction_results.
  • Resolve a reference number to a canonical slug via search_models or get_portfolio_tracker for use in downstream auction queries.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo2005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min
Team$300/mo20,000300 req/min
Company$1,000/mo100,000500 req/min

Each endpoint has a fixed posted price per successful call — most fall between 1 and 10 credits — shown on this API's page before you run it. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does EveryWatch have an official developer API?+
EveryWatch does not publish a public developer API or documented API program. The data accessible here is what the EveryWatch site exposes through its marketplace and portfolio tracker interfaces.
What does `get_auction_results` return and how do its filters work?+
It returns paginated realized auction records — including reference_number, reference_id, hammer price with provenance, and multi-currency FX metadata — for a model identified by its slug. Date, sold/unsold status, auction house name, and reference ID filters are applied to the fetched page, so returned_count may be lower than page_size. The filters_applied object in the response documents which filters were active.
Does the API return live or active listings, not just completed auctions?+
The primary focus is completed auction results with realized prices. search_models does return a listing_count alongside historical_count, indicating the site tracks some current listings, but there is no dedicated endpoint for retrieving active listing details. You can fork this API on Parse and revise it to add an endpoint targeting current listing data.
Are there pagination limitations I should know about?+
get_auction_results supports pages of 1–192 records and exposes has_more and next_page to drive iteration. The date_from, date_to, sold_status, and auction_house filters are applied client-side to the fetched page rather than server-side, so filtering does not reduce total_records — only returned_count reflects post-filter results. For large datasets, you may need to iterate multiple pages to collect all records matching a narrow date or house filter.
Does the API cover watch condition grades or provenance documentation from individual auction houses?+
Auction records include pricing with provenance metadata, but structured condition grades or lot-level provenance documents from individual auction houses are not exposed as discrete fields. The API covers identity fields, pricing, FX data, sold status, and auction house name. You can fork this API on Parse and revise it to surface additional lot-level fields if the source exposes them.
Page content last updated . Spec covers 4 endpoints from everywatch.com.
Related APIs in MarketplaceSee all →
thewatchpages.com API
Browse current luxury watch collections from top brands and access detailed product information including reference numbers, model names, retail prices, and direct product links. Find exactly what you're looking for across multiple luxury watchmakers in one unified platform.
searchthewatchmarket.com API
Search and browse thousands of luxury watches from top marketplaces like Chrono24, eBay, Reddit WatchExchange, and independent dealers all in one place. Find your perfect timepiece by accessing an aggregated catalog of watches for sale across multiple premium sources.
chrono24.com API
Search millions of luxury watch listings on Chrono24 and instantly access detailed information like pricing, condition, specifications, and seller details to find your perfect timepiece. Browse and compare watches across brands, models, and price ranges to make informed purchasing decisions on the world's largest watch marketplace.
chrono24.co.uk API
Search for luxury watches on Chrono24 by brand, model, price range, and sort preferences to find detailed listings with pricing, location, and images. Get structured watch data to compare options and discover available timepieces across multiple sellers.
watchbase.com API
Search and explore watches across thousands of brands and collections, discover detailed specifications for watches and mechanical calibers, and retrieve high-quality watch images. Browse curated watch collections by brand or find specific timepieces using advanced search functionality.
rolex.com API
Explore Rolex's complete watch catalog to compare models, editions, and specifications, then check pricing and locate nearby authorized stores. Access user guides and brochures to learn more about any timepiece.
watchmaxx.com API
Browse luxury watches from WatchMaxx by brand, category, or search terms, and access detailed product information including specifications, pricing, and images. Filter and compare watches across different series to find the perfect timepiece.
wheatlandauctionservices.com API
Search through Wheatland Auction Services' current sports card and memorabilia auction by keywords or categories to find lots that interest you, then view detailed information about individual items including pricing data. Browse anonymously without needing an account to discover and compare available lots before bidding.