# API reference

> Every endpoint, with its credit cost and minimum plan.

Source: https://pokemontcgapi.com/docs/api

One page per operation, each with its parameters, a runnable example in three languages, the exact response, and the errors it can return.

Credits are charged per request, not per row: a page of 250 costs the same as a page of 3.

## cards

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [Search cards](https://pokemontcgapi.com/docs/api/cards/search) | `GET /v1/cards` | 1 credit | free |
| [Get a card](https://pokemontcgapi.com/docs/api/cards/get) | `GET /v1/cards/{id}` | 1 credit | free |
| [Batch cards](https://pokemontcgapi.com/docs/api/cards/batch) | `GET /v1/cards/batch` | 1 credit per 25 ids, rounded up | free |

## sets

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [List sets](https://pokemontcgapi.com/docs/api/sets/list) | `GET /v1/sets` | 1 credit | free |
| [Get a set](https://pokemontcgapi.com/docs/api/sets/get) | `GET /v1/sets/{code}` | 1 credit | free |
| [Cards in a set](https://pokemontcgapi.com/docs/api/sets/cards) | `GET /v1/sets/{code}/cards` | 1 credit | free |

## artists

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [List artists](https://pokemontcgapi.com/docs/api/artists/list) | `GET /v1/artists` | 1 credit | free |
| [Get an artist](https://pokemontcgapi.com/docs/api/artists/get) | `GET /v1/artists/{slug}` | 1 credit | free |

## series

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [List series](https://pokemontcgapi.com/docs/api/series/list) | `GET /v1/series` | 1 credit | free |

## sealed

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [List sealed products](https://pokemontcgapi.com/docs/api/sealed/list) | `GET /v1/sealed` | 1 credit | free |
| [Get a sealed product](https://pokemontcgapi.com/docs/api/sealed/get) | `GET /v1/sealed/{id}` | 1 credit | free |

## reference

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [Reference lists](https://pokemontcgapi.com/docs/api/reference/lists) | `GET /v1/reference` | free, no key needed, cached for a day | free |

## status

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [Service status](https://pokemontcgapi.com/docs/api/status/get) | `GET /v1/status` | free, no key needed | free |

## prices

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [Current prices](https://pokemontcgapi.com/docs/api/prices/current) | `GET /v1/cards/{id}/prices` | 2 credits | free |
| [Current prices of a sealed product](https://pokemontcgapi.com/docs/api/prices/current-sealed) | `GET /v1/sealed/{id}/prices` | 2 credits | free |
| [Current prices, in batch](https://pokemontcgapi.com/docs/api/prices/batch) | `GET /v1/prices/current` | 4 per 25 ids: a full batch of 50 costs 8 | free |
| [Price history](https://pokemontcgapi.com/docs/api/prices/history) | `GET /v1/cards/{id}/prices/history` | 5 credits | free |
| [Price stats](https://pokemontcgapi.com/docs/api/prices/stats) | `GET /v1/cards/{id}/prices/stats` | 2 credits | free |
| [Movers](https://pokemontcgapi.com/docs/api/prices/movers) | `GET /v1/prices/movers` | 3 credits | growth |
| [Price sources](https://pokemontcgapi.com/docs/api/prices/sources) | `GET /v1/prices/sources` | free, no key needed | free |

## changes

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [List changes](https://pokemontcgapi.com/docs/api/changes/list) | `GET /v1/changes` | 1 credit | free |

## vision

| Operation | Endpoint | Cost | Plan |
| --- | --- | --- | --- |
| [Identify a card from a photo](https://pokemontcgapi.com/docs/api/vision/identify) | `POST /v1/vision/identify` | The most expensive call in the price list, and the only one that is not a row being read: it is the index of every catalogue image answering at once. | growth |
