Discover/christies API
live

christies APIchristies.com

Access Christie's auction results, lot details, provenance, estimates, and private sales via API. 7 endpoints covering sold and upcoming lots.

Endpoint health
verified 7h ago
get_departments
get_auction_detail
get_auction_lots
search_lots
get_lot_detail
7/7 passing latest checkself-healing
Endpoints
7
Updated
22d ago

What is the christies API?

The Christie's API provides 7 endpoints for retrieving auction data from christies.com, including sale results, individual lot details, and department listings. The get_lot_detail endpoint returns up to 10 fields per lot — artist, medium, dimensions, provenance, exhibition history, literature references, and multiple images — while search_lots lets you query sold and upcoming lots by keyword across Christie's full catalog.

Try it
Year (e.g., 2025)
Month (1-12)
api.parse.bot/scraper/e8837cb2-ff50-4fc7-a2af-52d73e7eda50/<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/e8837cb2-ff50-4fc7-a2af-52d73e7eda50/get_auction_results_overview?year=2025&month=2' \
  -H 'X-API-Key: $PARSE_API_KEY'
Python SDK · recommended

Typed, relational, agent-ready

A generated client with real types, enums, and the links between objects — the structure a flat JSON response can't carry. Autocompletes in your editor and reads cleanly to coding agents.

  • Fully typed · autocompletes
  • Objects link to objects
  • Typed errors & pagination

Typed Python client. Set up the SDK in your uv project, then pull this API’s typed client:

uv add parse-sdk
uv run parse init
uv run parse add --marketplace christies-com-api

uv run parse add --marketplace pulls a pinned snapshot of this canonical API — it won’t change underneath you. To customize it, subscribe and swap to your own copy.

"""Walkthrough: Christie's Art Market SDK — browse auctions, search lots, drill into details."""
from parse_apis.christie_s_art_market_api import Christies, IsPast, LotNotFound

client = Christies()

# List auctions for a given month — single-page, no pagination needed.
for auction in client.auctions.list(year=2025, month=2, limit=3):
    print(auction.title, auction.location, auction.sale_total)

# Search sold lots by keyword, take the top result and drill into details.
result = client.searchresults.search(query="Monet", is_past=IsPast.TRUE, limit=1).first()
if result:
    print(result.artist_name, result.lot_title, result.price_realized)

# Navigate from auction → lots sub-resource → full lot detail.
auction = client.auctions.list(year=2025, month=3, limit=1).first()
if auction:
    lot_summary = auction.lots.list(limit=1).first()
    if lot_summary:
        lot = lot_summary.details()
        print(lot.artist_name, lot.medium, lot.dimensions, lot.estimate_currency)

# List departments — all collecting areas Christie's covers.
for dept in client.departments.list(limit=5):
    print(dept.name, dept.url)

# Typed error handling around a lot detail fetch.
try:
    bad_result = client.searchresults.search(query="xyznonexistent999", is_past=IsPast.FALSE, limit=1).first()
except LotNotFound as exc:
    print(f"Not found: {exc}")

print("exercised: auctions.list / searchresults.search / auction.lots.list / lot_summary.details / departments.list")
All endpoints · 7 totalmissing one? ·

Fetch auctions held in a specific month and year. Returns a list of auctions with metadata including title, date, location, sale total, and type. Covers both live and online-only sales that have closed in the given period.

Input
ParamTypeDescription
yearintegerYear (e.g., 2025)
monthintegerMonth (1-12)
Response
{
  "type": "object",
  "fields": {
    "total": "integer count of auctions returned",
    "auctions": "array of auction objects with keys: auction_id, sale_number, title, date, location, sale_total, type, url, status"
  },
  "sample": {
    "data": {
      "total": 16,
      "auctions": [
        {
          "url": "https://onlineonly.christies.com/sso?SaleID=30939&SaleNumber=23978",
          "date": "14 – 28 February",
          "type": "Online",
          "title": "First Open | Post-War & Contemporary Art",
          "status": "Closed",
          "location": "New York",
          "auction_id": "30939",
          "sale_total": "USD 2,022,552",
          "sale_number": "23978"
        }
      ]
    },
    "status": "success"
  }
}

About the christies API

Auction Results and Lot Browsing

The get_auction_results_overview endpoint accepts a year and month and returns a list of closed auctions for that period. Each auction object includes auction_id, sale_number, title, date, location, sale_total, and type, distinguishing between live and online-only sales. To drill into a specific auction, pass its landing page URL to get_auction_detail, which returns sale_id, is_online, description, and a header image_url. That sale_id feeds directly into get_auction_lots, which paginates up to 100 lots per page with estimate_low, estimate_high, and price_realized for each lot.

Lot-Level Detail and Search

get_lot_detail takes a lot page URL and returns the most granular data the API exposes: medium, dimensions, work_year, provenance, exhibited, literature, and an array of full-resolution images. These fields support art research, price comparisons, and catalog documentation workflows. search_lots accepts a free-text query and a boolean is_past flag to target either sold or upcoming lots, returning artist_name, lot_title, estimate, price_realized, and image_url per result — useful for building cross-artist price indices or screening upcoming sales.

Departments and Private Sales

get_departments requires no inputs and returns the full list of Christie's collecting areas — Impressionist Art, Jewellery, Watches, and similar — with each department's name and url. get_private_sales similarly returns available private sale categories as objects with id, primary_title, category_name, url, and image. These endpoints are stable reference lists that change infrequently and work well as lookup tables in applications that need to categorize or filter other results.

Reliability & maintenanceVerified

The christies API is a managed, monitored endpoint for christies.com — not a raw scraper you maintain. Every endpoint is automatically health-checked on a schedule, and when christies.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 christies.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
7h ago
Latest check
7/7 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
  • Build an auction price index by pulling price_realized from get_auction_lots across multiple sales and months.
  • Research provenance and exhibition history for due-diligence workflows using provenance and exhibited from get_lot_detail.
  • Track upcoming lots for a specific artist by querying search_lots with is_past=false and filtering by artist_name.
  • Aggregate monthly sale totals from get_auction_results_overview to chart Christie's revenue trends by location.
  • Populate an art advisory platform with lot images and estimates pulled from get_auction_lots and get_lot_detail.
  • Catalog private sale inventory by department using get_private_sales and get_departments as reference lookups.
  • Compare pre-sale estimates against realized prices by joining estimate_low/estimate_high with price_realized from lot results.
Pricing & limitsSee full pricing →
TierPriceCredits/monthRate limit
Free$0/mo1005 req/min
Hobby$30/mo1,00020 req/min
Developer$100/mo5,000100 req/min

One credit = one API call regardless of which marketplace API you call. Exceeding the rate limit returns a 429 response. Authenticate with the X-API-Key header.

Frequently asked questions
Does Christie's have an official public developer API?+
Christie's does not publish a public developer API. There is no documented REST or GraphQL interface available at developer.christies.com or any equivalent portal as of mid-2025.
What does get_lot_detail return beyond basic price data?+
get_lot_detail returns medium, dimensions, work_year, provenance, exhibited, literature, and an images array alongside the lot title and number. The provenance, exhibited, and literature fields are returned as raw text strings when present, or null when not recorded for that lot.
Can I retrieve bidder information or buyer's premiums for a sale?+
Not currently. The API covers sale totals, per-lot estimates, and prices realized, but does not expose buyer's premium breakdowns, bidder counts, or individual transaction records. You can fork this API on Parse and revise it to add an endpoint targeting that data if Christie's surfaces it publicly.
How does pagination work in get_auction_lots and search_lots?+
get_auction_lots accepts a page parameter starting at 1 and returns up to 100 lots per page, along with a total count so you can compute the number of pages needed. search_lots also accepts a page parameter and returns a total count. Neither endpoint supports a configurable page size — the per-page limit is fixed.
Does the API cover Christie's sales from years prior to 2020?+
The get_auction_results_overview endpoint accepts any year and month inputs, but coverage of historical sales depends on what Christie's indexes on its results pages. Older sales may return incomplete metadata or fewer lots. For very early sales, sale_total and some lot-level fields such as price_realized may be null. You can fork this API on Parse and revise it to target archival sections of the site if your use case requires deeper historical coverage.
Page content last updated . Spec covers 7 endpoints from christies.com.
Related APIs in MarketplaceSee all →
bonhams.com API
Search and browse fine art, collectibles, cars, and more across Bonhams auctions—find upcoming sales, view detailed lot listings, check past auction results, and filter by department. Instantly discover specific items and auction details with powerful search and filtering capabilities.
sothebys.com API
Search and explore Sotheby's auction history to find sold lot results by artist, access detailed information including provenance and condition reports, and discover auction details all in one place. Get comprehensive data on specific lots and auctions to research art valuations, sales records, and collection histories.
auctionzip.com API
Search and browse auction lots across the AuctionZip marketplace, view detailed lot information and complete auction catalogs, track historical prices realized, and discover auctioneers by name or location. Access auction schedules, item specifications, seller terms, and top-performing auctioneers.
encheres-publiques.com API
Search and browse real estate, vehicle, art, and equipment auctions across France, viewing detailed lot information and upcoming auction events from various organizers. Filter auction listings by category and type to find specific items and compare auction details to make informed bidding decisions.
invaluable.com API
Search and browse fine art auction listings from Invaluable.com, discovering items by artist, auction house, or upcoming lots. Get detailed information about artworks, artists, and auction house catalogs to track pieces and stay informed about upcoming sales.
artsy.net API
Browse and search across 300,000+ artists to discover detailed profiles with biographies, nationalities, career insights, and artwork counts. Find artists alphabetically or by name to explore their complete creative background and body of work.
auctiontime.com API
Search and browse equipment and truck auction listings from AuctionTime.com, view detailed information about specific auctions, filter by category and auctioneer, and track auction results by date. Access comprehensive auction data including listings, categories, and auctioneer information all in one place.
auction.com API
auction.com API