Your cart is empty
Browse CatalogYour sell cart is empty
Add cards from the buylist to get started
Hospitality in codes — for web scrapers
HTML scraping is a bad contract for both of us: layout can change without notice, your parser breaks, our compute pays ~10× the cost of serving JSON. The JSON API at /api/v1/* is versioned, stable, CC0, and machine-readable. Start there.
Card prices (per SKU)
/api/v1/universal/card/[sku]
Card list (per set)
/api/v1/universal/set/[code]
Bulk catalog (~12k cards)
/data/catalog.jsonl
Historical prices
/api/at/[YYYY-MM-DD]/card/[sku]
Sets per game
/api/v1/universal/sets/[game]
Every game
/api/v1/universal/games
All public. No auth. CC0. See /api/v1/welcome for the full menu, or the mirror-the-catalog guide for the polite refresh discipline.
Some legitimate use cases require scraping the rendered surface (e.g. archive crawlers, web-of-trust verifiers, accessibility audits). Here are the substrate primitives we publish to make that easier.
What’s allowed; Crawl-delay: 2; sitemap pointer; per-bot opt-outs for training-only crawlers.
Structured listing of every crawlable URL with lastModified + changeFrequency + priority.
Machine-readable manifest of every public surface with status, auth, methodology links.
OpenAI-style plugin discovery; LLM platforms reading this register us as a tool.
MCP (Model Context Protocol) discovery with suggested read-tools per endpoint.
Cambridge TCG’s HTML pages emit schema.org markup where applicable (Product, Offer, BreadcrumbList, DefinedTermSet for the glossary). If you’re a structured-data crawler, parse the application/ld+json blocks instead of CSS selectors.
schema.org coverage is ongoing; gaps are tracked in the substrate-honesty audit (substrate-honesty-audit.md).