Docs / API reference
Many cards
Current prices for many cards in one request: the fastest way to value a collection or a store's stock.
Request
POST
https://tcgpriceapi.com/v1/cards/lookup| Name | Type | Description |
|---|---|---|
card_idsrequired | array of strings | The cards to look up, up to your plan's cards per request (1 on Free, 250 on Enterprise). Duplicates are looked up once. |
printing | string | Only this printing, such as Holofoil. |
condition | string | Only this condition, such as Near Mint. |
language | string | Only this language, such as English. |
Counts as one request however many cards it asks for. On Starter, the cards also count toward 1,000 cards a day. The example asks for two cards, so it needs Starter or above.
curl -X POST "https://tcgpriceapi.com/v1/cards/lookup" \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{"card_ids": ["card_1c3aaea45434413c", "card_..."], "condition": "Near Mint"}'import requests
response = requests.post(
"https://tcgpriceapi.com/v1/cards/lookup",
headers={"X-API-Key": "YOUR_API_KEY"},
json={
"card_ids": [
"card_1c3aaea45434413c",
"card_..."
],
"condition": "Near Mint"
},
timeout=30,
)
response.raise_for_status()
print(response.json())const response = await fetch("https://tcgpriceapi.com/v1/cards/lookup", {
method: "POST",
headers: {
"X-API-Key": process.env.TCGPRICEAPI_KEY,
"Content-Type": "application/json",
},
body: JSON.stringify({"card_ids": ["card_1c3aaea45434413c", "card_..."], "condition": "Near Mint"}),
});
if (!response.ok) throw new Error(`HTTP ${response.status}`);
console.log(await response.json());Response
The same shape as One card: cards in the order you asked for them and not_found for ids that don't exist.
| Field | Type | Description |
|---|---|---|
cards | array of card objects | The cards found, in the order you asked for them. Duplicates are listed once. |
not_found | array of string | The card_ids you asked for that don't exist. |