/api/v1/:tcg/cards/:card_id/prices read:catalogThe complete pricing for one card in our own dedicated shape: the market price, per-condition raw ladder, and reconciled graded values — each graded value blends our feed with real sold comps into a single number with a `confidence`, a low/high band, sold count, an aggregate sold `band` (median / recent_median / p10 / p90 / count), `last_sold_at`, and a manipulation-safe sold-momentum `trend`. Individual sold listings and per-source provenance are intentionally not exposed. See the Pricing guide. Wrapped in `{ success, data: { card_id, pricing } }`.
GET /api/v1/pokemon/cards/swshp_ja-104vh/prices These inputs are shared across all docs pages — an id entered here carries over.
{
"success": true,
"data": {
"card_id": "swshp_ja-104vh",
"pricing": {
"currency": "USD",
"market": 4392,
"is_stale": false,
"conditions": [
{
"condition": "NM",
"price": 4392
}
],
"graded": [
{
"company": "BGS",
"grade": "9",
"value": 3120,
"low": 2652,
"high": 3588,
"confidence": "low",
"value_kind": "feed",
"sold_count": 0
},
{
"company": "PSA",
"grade": "10",
"value": 7172.5,
"low": 9950,
"high": 9950,
"confidence": "med",
"value_kind": "blended",
"sold_count": 1,
"last_sold_at": "2026-07-18T00:00:00.000Z",
"band": {
"median": 9950,
"recent_median": 9950,
"p10": 9950,
"p90": 9950,
"count": 1
}
}
],
"market_updated_at": "2026-07-29T19:48:27.200Z",
"trend_7d": {
"direction": "flat",
"percent": -0.49
}
}
}
}curl -X GET 'https://service.rip.fun/api/v1/pokemon/cards/swshp_ja-104vh/prices' \ -H 'X-API-Key: rip_…'
| Field | Type | Required | Description |
|---|---|---|---|
card_id | string | yes | Path param — the card id, e.g. `swshp_ja-104vh`. |
data)| Field | Description |
|---|---|
data.card_id | The card id |
data.pricing.market / market_updated_at / is_stale | Headline ungraded market price (USD), when it was last observed, and whether it’s stale |
data.pricing.trend_7d | `{ direction: up|down|flat, percent }` — 7-day market move |
data.pricing.conditions[] | `{ condition, price }` raw ladder (NM/LP/MP/HP/DMG) |
data.pricing.graded[] | `{ company, grade, value, low, high, confidence, value_kind, sold_count, trend?, last_sold_at?, band? }` — reconciled per company+grade |
data.pricing.graded[].band | `{ median, recent_median, p10, p90, count }` — aggregate sold comps (counts/ranges only, never individual listings) |
| Status | Code | When |
|---|---|---|
| 404 | not_found | no card with that id for this game |
See Errors for the response envelope and the full code list.