# Card Hedge Card Search

> Card Hedge Card Search is a paid API for AI agents from api.cardhedger.com, paid per call via x402, $0.01/call, status unknown (last checked 2026-10-28).

Search and filter trading cards by player, set, subset, category, card number, rookie status, and more with paginated results.

## Facts

- Endpoint: POST https://api.cardhedger.com/v1/agent/cards/card-search?utm_source=zero.xyz
- Price: $0.01/call
- Payment: x402
- Status: unknown
- Last checked: 2026-10-28
- Activations on Zero: 0
- Tags: x402
- Canonical page: https://www.zero.xyz/c/card-hedge-card-search-3ab15ffe
- Structured record (JSON): https://api.zero.xyz/v1/capabilities/cap_mxZYZv-ZTOpDrbs-3cCq5

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 card-hedge-card-search-3ab15ffe -d '<json body>'
```

Example prompt: Search Card Hedger for rookie baseball cards of Shohei Ohtani in the 2025 Topps Baseball set, Base Set subset, and show me the first 25 results with raw card photos.

## When to prefer this

Use this endpoint when you need to discover or browse trading cards by flexible criteria such as player name, set, subset, category, or rookie status. It is ideal for exploration and inventory-style queries. Prefer sibling endpoints for fetching prices or comparable sales once a card_id is known from search results.

## Known failure modes

- Invalid filter combination returns empty result set
- Exact-match fields (number, subset) return no results if spelling differs from database
- Page number beyond available pages returns empty list
- page_size exceeding maximum of 100 is rejected
- Malformed request body returns validation error

## How this service works

Search for cards with flexible filtering options.

## Output

Returns a paginated list of trading card records matching the specified filters, including card names, set and subset details, card numbers, images (raw or graded slab based on preference), and other card metadata. Pagination details indicate total results and available pages.

## Request schema (JSON Schema)

```json
{
 "type": "object",
 "properties": {
  "set": {
   "type": "string",
   "description": "Filter by set name (e.g., '2025 Topps Baseball')"
  },
  "page": {
   "type": "integer",
   "default": 1,
   "minimum": 1,
   "description": "Page number for pagination"
  },
  "number": {
   "type": "string",
   "description": "Filter by card number within the set (exact match, e.g. '150')"
  },
  "player": {
   "type": "string",
   "description": "Filter by player name"
  },
  "rookie": {
   "type": "string",
   "description": "Filter by rookie status (e.g., 'Rookie')"
  },
  "search": {
   "type": "string",
   "description": "Search query for card name/description"
  },
  "subset": {
   "type": "string",
   "description": "Filter by subset within the set (exact match, e.g. 'Base Set', 'Chrome')"
  },
  "category": {
   "type": "string",
   "description": "Filter by category (e.g., 'Baseball', 'Basketball')"
  },
  "page_size": {
   "type": "integer",
   "default": 50,
   "maximum": 100,
   "minimum": 1,
   "description": "Number of results per page (1-100)"
  },
  "raw_images_only": {
   "type": "boolean",
   "description": "Image preference. Omitted (default): return the raw card photo, falling back to the graded slab image only when no raw photo exists. true: force raw-only (no graded fallback). false: prefer the graded slab image."
  }
 }
}
```

## More

- Live health (JSON, refreshed every minute): https://www.zero.xyz/c/card-hedge-card-search-3ab15ffe/health.json
- [Zero catalog index](https://www.zero.xyz/llms.txt)
- [Other services from api.cardhedger.com](https://www.zero.xyz/host/api.cardhedger.com/llms.txt)
