List instant packs

GET /api/v1/instant/catalog read:catalog

Lists the booster packs you can sell as instant packs — a purchase that buys AND opens the pack in one on-chain transaction, so there’s no pack NFT sitting around waiting to be opened. Every pack is backed by a pre-built card bundle from a physically ripped pack, and available_packs is the live bundle count. Use packet_type_id with the purchase endpoint. By default only packet types with availability are listed; add ?include_unavailable=1 to see sold-out ones too.

Try it GET /api/v1/instant/catalog?limit=10

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

response
403 9ms preloaded server-side with the default context
object · 3 keys
{
  "success": false,
  "message": "Mystery partner API key required",
  "error": "This endpoint requires an API key linked to a mystery partner account"
}
tracks the inputs above
curl -X GET 'https://service.rip.fun/api/v1/instant/catalog?limit=10' \
  -H 'X-API-Key: rip_…'

Request fields

FieldTypeRequiredDescription
include_unavailablequery int`1` → include packet types with zero available bundles (default: only available)
limit / offsetquery intPagination

Response fields (data)

FieldDescription
packs[].packet_type_idOn-chain packet type id, used by the purchase endpoint
packs[].set_id / set_nameThe set the pack belongs to, e.g. sv8pt5 / "Prismatic Evolutions"
packs[].product_id / nameProduct id + booster pack display name
packs[].image_url / large_image_urlPack artwork
packs[].price / price_usdcPack price (USDC micros string + decimal display, "4990000" = 4.99 USDC)
packs[].available_packsPre-built card bundles currently available to draw
packs[].tcg_type / languageGame + language, e.g. "pokemon" / "ENGLISH"

Errors

StatusCodeWhen
403Insufficient permissionskey lacks the read:catalog scope

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