Get sealed pricing

GET /api/v1/azuki/sealed/{id}/prices read:catalog 1 credit

Market pricing for one sealed product: the current value, its 7-day trend, any live sale price, and the trailing history behind it. Returns `{ product_id, pricing }` — the sealed twin of a card’s `{ card_id, pricing }`. Where a card carries a five-rung condition ladder and a graded block, sealed carries **one rung**, `sealed`, because factory-sealed is the only state we price. There is no `opened` value to compare it against and no graded tier: a product’s worth is one number.

Try it GET /api/v1/azuki/sealed/sv3pt5-etb/prices

These inputs are shared across all docs pages, so an id entered here carries over.

response
200 10ms preloaded server-side with the default context
object · 2 keys
{
  "success": true,
  "data": {
    "product_id": "azk-01-gabb",
    "pricing": {
      "currency": "USD",
      "market": 119.99,
      "is_on_sale": false,
      "updated_at": "2026-08-31T03:38:19.896Z",
      "conditions": [
        {
          "condition": "sealed",
          "price": 119.99
        }
      ],
      "history": []
    }
  }
}
tracks the inputs above
curl -X GET 'https://service.rip.fun/api/v1/azuki/sealed/sv3pt5-etb/prices' \
  -H 'X-API-Key: rip_…'

Response fields (data)

FieldDescription
product_idThe product the payload belongs to, in its stored spelling
pricing.currencyISO currency of every amount in the payload (always `USD` today)
pricing.marketHeadline market value for a factory-sealed copy, or `null` where we hold none — which is every Azuki product, priced at MSRP with no sales behind it.
pricing.updated_atWhen that value was last recomputed (ISO 8601)
pricing.is_on_sale / sale_price`is_on_sale` is always present; `sale_price` only when there is a live sale price to report
pricing.trend_7dSigned percentage change over the trailing week. Sealed carries this one window only — there is no `trend_30d`/`trend_90d` here.
pricing.conditions[]`{ condition, price }` — **exactly one rung**, `sealed`, priced at `market`. There is no `opened` value: we don’t price opened product, so nothing here is a ladder to walk. It exists so the field lines up with the card payload, not because there is a second grade to compare against.
pricing.history[]`{ date, price, source }` trailing points, capped per request. This is the whole of the sealed time series — there is no `/sealed/{id}/prices/history` route and none is planned.

Errors

StatusCodeWhen
404not_foundno such object for this game (a Pokémon id on `/onepiece` is "not found")

See Errors for the response envelope and the full code list.