List Products

Get a list of products from the catalog. Filter by set, game, or search by name to find product IDs for inventory sync.

Available Games

Use these slugs when filtering by game:

GET/products
List Products

Retrieve products from the catalog with filtering options.

On larger screens, use the API Playground panel on the right to try this endpoint.
NameTypeRequiredDescription
setIdstringOptionalFilter by set ID
setSlugstringOptionalFilter by set slug (e.g., "alpha", "base-set")
gameSlugstringOptionalFilter by game slug (e.g., "magic-the-gathering")
searchstringOptionalSearch products by name
pagenumberOptionalPage number (1-indexed)Default: 1
limitnumberOptionalItems per page (max 200, or 1000 when filtering by set)Default: 50
bash
curl "https://api.ctcgx.com/api/v1/products" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

Returns a paginated list of products with their IDs and external ID mappings.

json
{
  "products": [
    {
      "id": "clxxx...",
      "name": "Black Lotus",
      "productSlug": "black-lotus",
      "setName": "Alpha",
      "gameSlug": "magic-the-gathering",
      "cardNumber": "232",
      "rarity": "rare",
      "imageUrl": "https://...",
      "externalIds": [
        { "source": "scryfall", "externalId": "abc-123" },
        { "source": "tcgplayer", "externalId": "12345" }
      ],
      "variants": {
        "finishes": ["nonfoil"],
        "editions": [],
        "languages": ["English"]
      }
    }
  ],
  "total": 302,
  "page": 1,
  "limit": 50
}

Common Use Cases

# Get all products in a set (up to 1000)
GET /products?setSlug=foundations&limit=1000

# Search for a specific card
GET /products?search=Black%20Lotus

# Get products for a game (paginated, max 200 per page)
GET /products?gameSlug=magic-the-gathering&page=1&limit=200

# Get products by set ID
GET /products?setId=clxxx...&limit=1000

Using Product IDs

Each product includes its CTCGX product ID and any mapped external IDs (Scryfall, TCGplayer, etc.). You can use any of these IDs when syncing inventory:

  • ctcgxProductId - Our internal product ID
  • scryfallId - Scryfall card ID (Magic)
  • tcgplayerId - TCGplayer product ID
  • cardmarketId - Cardmarket product ID
  • cardtraderId - CardTrader product ID

API Playground

Select an endpoint from the documentation to try it out here.