API
Catalogue, images and reference prices for your application.
The cardmarket.pro API delivers games, sets and printings, card images, reference prices in EUR with trend and history, variants by language and finish, and the condition scale – as a REST interface with JSON. Built for apps, collection tools, shop systems and research. Access is granted on request and is free for non-commercial projects.
At a glance
- REST and JSON, version v1
- Authentication with a key in the request header
- 60 requests per minute, 5,000 per day as standard
- Prices in EUR as cent amounts with a reference date
What the API delivers
The same data that powers the marketplace and the app – with cardmarket.pro’s own IDs.
Catalogue
Games, sets with code and release date, and printings with collector number and rarity.
Images
Listing and detail image per printing as an absolute URL, where an image exists.
Reference prices
Trend and lowest reference price in EUR per printing with a reference date, plus the history of the last 30 days.
Variants and conditions
Variants by language and finish, and the seven-step condition scale from Mint to Poor.
Who the API is for
Apps
Scanners, deck builders and companion apps that recognise or display cards.
Collection tools
Inventory management and portfolio valuation with current reference prices.
Shop systems
Product data, images and price orientation for your own shop or point of sale.
Research
Analyses of price development, availability and set structure.
Technical details
The API is a lean REST interface. Every response is JSON, every amount an integer in cents, every timestamp ISO 8601.
Endpoints
- GET
/api/v1/gamesVisible games with slug, name and kind
- GET
/api/v1/sets?game={slug}&page=1&pageSize=50Sets of a game with code, name, release date and card count
- GET
/api/v1/cards?game={slug}&q={text}&set={setId}&number={collectorNumber}Card search by game, text, set or collector number
- GET
/api/v1/cards/{id}A single card with images, variants, prices, price history and the condition scale
- GET
/api/v1/conditionsCondition scale with code and name
Lists are paginated (page, pageSize); meta reports total and generatedAt.
Authentication
Every request carries the key in the x-api-key header. Keys start with cmp_live_, are personal and can be revoked at any time. Use them server-side only – never in the browser and never inside shipped apps.
curl -H "x-api-key: cmp_live_0123456789abcdef0123456789abcdef" \
"https://cardmarket.pro/api/v1/cards?game=pokemon&q=dragon&pageSize=5"Limits
- 60 requests per minute per key
- 5,000 requests per day as standard, more on request
- Status 429 with a Retry-After header when a limit is exceeded
- Responses can be cached for five minutes (Cache-Control)
Response format
Successful responses return data and meta. Errors come as error with code and message, for example unauthorized (401) or rate_limited (429).
Example: response from /api/v1/cards/{id}
{
"data": {
"id": 1842113,
"name": "Example Card",
"game": "pokemon",
"set": {
"id": 7731,
"code": "EXA",
"name": "Example Set"
},
"collectorNumber": "025/165",
"rarity": "Rare",
"imageUrl": "https://cardmarket.pro/media/example-listing.jpg",
"variants": [
{
"id": 90211,
"language": "de",
"finish": "holo"
},
{
"id": 90212,
"language": "en",
"finish": "normal"
}
],
"prices": {
"currency": "EUR",
"trendMinor": 1250,
"lowMinor": 990,
"asOf": "2026-11-07"
},
"images": {
"listing": "https://cardmarket.pro/media/example-listing.jpg",
"detail": "https://cardmarket.pro/media/example-detail.jpg"
},
"priceHistory": [
{
"date": "2026-11-06",
"trendMinor": 1230
},
{
"date": "2026-11-07",
"trendMinor": 1250
}
],
"conditionScale": [
"MT",
"NM",
"EX",
"GD",
"LP",
"PL",
"PO"
]
},
"meta": {
"generatedAt": "2026-11-08T16:01:51.208Z"
}
}Versioning
The version is part of the path (v1). New fields may be added at any time; changes that remove or redefine existing fields only appear in a new version. Key holders are informed by e-mail.
Attribution
This is what the attribution looks like – as text or link, clearly visible next to the data:
<a href="https://cardmarket.pro">Data: cardmarket.pro</a>Access and conditions
Short and without fine print. The details are in the agreement you receive with the key.
- Free for non-commercial projects
- Partner terms for commercial use, tailored to volume and purpose
- Attribution “Data: cardmarket.pro” with a link wherever data is shown
- No redistribution of raw data or datasets to third parties, no building of databases for onward distribution
- Images only with attribution and only in connection with the catalogue data
- The key is personal, non-transferable and can be revoked in case of violations
How to get a key
- 1
Send the request
Describe your project, the intended use, the data you need and the expected volume in the form.
- 2
Review
We review purpose and volume, ask questions in the ticket and, for commercial use, agree the terms.
- 3
Key by e-mail
You receive the key once by e-mail. Store it safely – it is not shown again.
- 4
Go live
Test the integration, add the attribution, go to production. For questions, simply reply in the ticket.
Frequently asked questions
Technical questions about the integration are answered in the ticket.
Go to the help centreAre the prices offer prices?
No. They are reference prices per printing – a trend value and the lowest reference price, each with a reference date. They do not distinguish by condition and are not offers.
Is there a price history?
Yes, the last 30 days as daily values for every card, where available. Longer periods are currently not part of the API.
May I cache responses?
Yes, for five minutes. A permanent mirror of the data or passing it on as a dataset is not permitted.
What does access cost?
Nothing for non-commercial projects. For commercial use we agree partner terms based on volume and purpose; they are set out in the agreement before the key is issued.
Request API access
Tell us about the project, the intended use and the volume – we will get back to you with questions or the next step.
The API identifies all data by cardmarket.pro’s own IDs. How we handle the details from your request is described in the privacy policy.