# 2s TCG Card Lookup

> 2s TCG Card Lookup is a paid API for AI agents from 2s.io, paid per call via x402, $0.012/call, status unknown (last checked 2026-09-15).

Retrieves TCGplayer card details including name, card number, rarity, and current market prices for a specific trading card game card by product ID and set.

## Facts

- Endpoint: GET https://2s.io/api/tcg/card
- Price: $0.012/call
- Payment: x402
- Status: unknown
- Last checked: 2026-09-15
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/2s-tcg-card-lookup-54c0a377
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_FviHQMmmueZSgm6mf5AI8

Status and success rate cover calls made through Zero and Zero's own probes. Third-party monitors may report differently.

## How to call it through Zero

Zero handles the 402 payment challenge and records the run. With the Zero CLI installed (`npm i -g @zeroxyz/cli`):

```sh
zero fetch --capability 2s-tcg-card-lookup-54c0a377
```

Example prompt: What are the current low, mid, and high prices for Alakazam from the Pokémon Base Set on TCGplayer? The game is pokemon, the set groupId is 604, and the productId is 42346.

## When to prefer this

Use this endpoint when you need structured price and metadata for a specific TCG card and already know the TCGplayer productId and set groupId. Ideal for price checking, portfolio valuation, or enriching card collection data with live market prices. Prefer over scraping TCGplayer directly since this provides structured, pay-per-call data without signup or API keys.

## Known failure modes

- Invalid or unknown productId returns empty items array or ok:false
- Wrong game/set combination for the given productId returns no results
- Non-numeric set or productId values cause validation errors
- Missing required query params (game, set, productId) return 400-level error
- Payment failure via x402 results in 402 response blocking data access

## How this service works

The (most) everything API: 575+ pay-per-call endpoints for AI agents — ground-truth data, a full AI gateway, and agent infrastructure (storage, queues, watchers). USDC via x402, no signup, no API keys, and upto billing: pay actual usage, not the quote.

## Output

Returns a JSON object with card metadata including name, card number, rarity, TCGplayer URL, and an array of price entries (low, mid, high, market price) broken down by subType (e.g. Holofoil, Normal). Also includes set groupId, categoryId, total results, and data source attribution.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "$schema": "https://json-schema.org/draft/2020-12/schema",
 "required": [
  "input"
 ],
 "properties": {
  "input": {
   "type": "object",
   "required": [
    "type",
    "method",
    "queryParams"
   ],
   "properties": {
    "type": {
     "const": "http"
    },
    "method": {
     "const": "GET"
    },
    "queryParams": {
     "required": [
      "game",
      "set",
      "productId"
     ],
     "properties": {
      "set": {
       "type": "number",
       "description": "groupId of the set (from tcg.sets)."
      },
      "game": {
       "type": "string",
       "description": "categoryId (e.g. 3) or game name (e.g. \"pokemon\")."
      },
      "productId": {
       "type": "number",
       "description": "TCGplayer productId of the card."
      }
     }
    }
   }
  }
 }
}
```

## Response schema (JSON Schema)

```json
{
 "type": "json",
 "schema": {
  "type": "object",
  "properties": {
   "ok": {
    "type": "boolean"
   },
   "meta": {
    "type": "object",
    "properties": {
     "groupId": {
      "type": "integer"
     },
     "categoryId": {
      "type": "integer"
     }
    }
   },
   "items": {
    "type": "array",
    "items": {
     "type": "object",
     "properties": {
      "url": {
       "type": "string"
      },
      "name": {
       "type": "string"
      },
      "number": {
       "type": "string"
      },
      "prices": {
       "type": "array",
       "items": {
        "type": "object",
        "properties": {
         "low": {
          "type": "number"
         },
         "mid": {
          "type": "number"
         },
         "high": {
          "type": "number"
         },
         "market": {
          "type": "number"
         },
         "subType": {
          "type": "string"
         }
        }
       }
      },
      "rarity": {
       "type": "string"
      },
      "productId": {
       "type": "integer"
      }
     }
    }
   },
   "total": {
    "type": "integer"
   },
   "source": {
    "type": "object",
    "properties": {
     "url": {
      "type": "string"
     },
     "license": {
      "type": "string"
     },
     "provider": {
      "type": "string"
     }
    }
   }
  }
 },
 "example": {
  "ok": true,
  "meta": {
   "groupId": 604,
   "categoryId": 3
  },
  "items": [
   {
    "url": "https://www.tcgplayer.com/product/42346/pokemon-base-set-alakazam",
    "name": "Alakazam",
    "number": "001/102",
    "prices": [
     {
      "low": 24.99,
      "mid": 39.95,
      "high": 199.99,
      "market": 38.5,
      "subType": "Holofoil"
     }
    ],
    "rarity": "Holo Rare",
    "productId": 42346
   }
  ],
  "total": 1,
  "source": {
   "url": "https://tcgcsv.com/",
   "license": "TCGplayer-derived pricing via tcgcsv.com",
   "provider": "tcgcsv.com (TCGplayer-derived pricing)"
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/2s-tcg-card-lookup-54c0a377/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from 2s.io](https://www.zero.xyz/host/2s.io/llms.txt)
