Reference
API versions
api.poketrace.com. v2 is the current version and the one we recommend.| Version | Base URL | Status |
|---|---|---|
| v2 | https://api.poketrace.com/v2 | Current and recommended. Everything in these docs uses v2. |
| v1 | https://api.poketrace.com/v1 | Still available. Behaves as before 2.0. |
Both prefixes use the same API key and plans. Requests to /v1 and /v2 count toward one daily counter. Burst limits and paid plans' daily limits are the same on both. On v2 a Free key is stopped once that counter reaches 100 for the day; v1 allows a Free key up to 250. WebSocket is at wss://api.poketrace.com/v2/ws, and the v2 OpenAPI document is at https://api.poketrace.com/v2/openapi.json.
What differs
Four things differ: the card fields, the card list GET /cards, the price history periods each plan can read, and the Free daily limit. Every other endpoint is the same under both prefixes, and price history accepts ?market= on v1 and v2.
| v2 | v1 | |
|---|---|---|
| Card fields | prices is grouped by grade, then market, then source, for example prices.NEAR_MINT.US.ebay. No pricesByGrade or counterparts; the linked card's id is in markets.EU.cardId or markets.US.cardId. | prices is grouped by source, then tier, for example prices.ebay.NEAR_MINT. GET /cards/:id also returns pricesByGrade and counterparts. |
| Linked US and EU cards in GET /cards | Listed once, as the combined card: the US record's fields plus markets and prices for both markets. On plans with EU access, refs.cardmarketId comes from the EU card. Unlinked cards are listed on their own. | Every record is listed, US and EU separately. |
market=US|EU | Cards with prices in that market. A linked card matches both. | Records of that market. market=EU returns EU records. |
set | An EU set slug returns its US set, as one merged set. | The set slug as given. |
set + card_number | Identity lookup: the set slug and card number of either market return the combined card. | Filters the records of that set by card number. |
| Id lookups | cardmarket_ids and tcgplayer_ids return linked EU cards as the combined card, under the US id. | Returns the matching records. |
History period | Free up to 7d, Pro and Growth up to 1y, all-time price history (period=all) on Scale and Business. A longer period returns 403 UPGRADE_REQUIRED. | Every period on every plan that has history access, as before. |
| Free daily limit | Stopped once the shared daily counter reaches 100. Burst stays 1 request / 2 s. | Up to 250 on the same counter, as before. |
Switching to v2
We recommend switching to v2. Change the base URL from /v1 to /v2 and read prices grade first: prices.NEAR_MINT.US.tcgplayer instead of prices.tcgplayer.NEAR_MINT. If you page through GET /cards and store ids, linked cards you stored under their EU id arrive with the US id at the top level. Map them through markets.EU.cardId. EU ids stay valid for GET /cards/:id and price history.