Sync with Waxpeer session to auto-fill API key

Check up to 1000 item_ids at once, with the CSV snapshot fields

POST/v1/check-availability

Send up to 1000 item ids in the JSON body. Every listing that is for sale now comes back with the fields of its row in the CSV snapshot (GET /v1/prices/snapshot?format=csv), plus float, paint_index, phase and sticker_names. The data is read live, not from the snapshot cache.

The listings returned are the ones the CSV contains for the same include_hold / include_manual; other ids are left out. Results are in ascending item_id order. merchant is returned only to accounts that see supply sources in the CSV.

Send ids as strings: item ids are larger than 2^53. An id that is not a whole number is ignored; the others are still answered.

Errors (HTTP 200, success: false): invalid body, missing item_ids, too many items (more than 1000).

GET /v1/check-availability is unchanged.

Prices are integers. 1000 = $1.00 USD.

Parameters

NameLocationTypeDescription
api
required
querystring
include_hold
optional
querystring

1 / true: also return trade-locked listings (delivery=hold, with unlock_at and send_until), as on the CSV.

include_manual
optional
querystring

1 / true: also return 12-hour manual-delivery P2P listings (delivery=manual), as on the CSV.

Request body

NameLocationTypeDescription
item_ids
required
bodyarray<string>

1 to 1000 item ids, as strings or numbers

Example
{
  "item_ids": [
    "27165625733",
    "53927617185"
  ]
}

Responses

200 Successful operation

NameTypeDescription
success
optional
boolean

Whether the operation succeeded

items
optional
array<object>

Array of items

item_id
optional
string

Unique Waxpeer item identifier (item_id)

name
optional
string

Full item market hash name

price
optional
number

Item price in integer format (1000 = $1.00 USD)

auto
optional
boolean

true when the listing delivers instantly

inspect
optional
string

Steam inspect link; null when not available

unlock_at
optional
string

RFC 3339 UTC time when the Steam trade lock ends and item can be sent. null for regular items

send_until
optional
string

RFC 3339 UTC delivery deadline

class_id
optional
string

Steam class id; empty string when not known

instance_id
optional
string

Steam instance id; empty string when not known

steam_id
optional
string

SteamID64 of the account holding the item; empty string when not known

merchant
optional
string

Supply source; returned only to accounts that see supply sources

delivery
optional
enum

How the listing ships: instant, regular, hold or manual (the CSV delivery column)

enum: instant, regular, hold, manual

float
optional
number

Item wear float value (CS:GO)

paint_index
optional
number

Item paint index

phase
optional
string

Doppler phase name (e.g. Phase 1, Ruby, Emerald)

sticker_names
optional
array<string>

Names of applied stickers

Response
{
  "success": true,
  "items": [
    {
      "item_id": "27165625733",
      "name": "★ Karambit | Fade (Factory New)",
      "price": 1687470,
      "auto": false,
      "inspect": "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198000000001A27165625733D1234567890",
      "unlock_at": "2026-10-22T09:00:00Z",
      "send_until": "2026-10-23T09:00:00Z",
      "class_id": "310854699",
      "instance_id": "302028390",
      "steam_id": "76561198000000001",
      "delivery": "hold",
      "float": 0.0123,
      "paint_index": 38,
      "phase": null,
      "sticker_names": [
        "Crown (Foil)"
      ]
    },
    {
      "item_id": "53927617185",
      "name": "★ Bayonet | Gamma Doppler (Factory New)",
      "price": 1234500,
      "auto": true,
      "inspect": "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561199883497268A53927617185D9876543210",
      "unlock_at": null,
      "send_until": null,
      "class_id": "7993038249",
      "instance_id": "480085569",
      "steam_id": "",
      "delivery": "instant",
      "float": 0.0081,
      "paint_index": 571,
      "phase": "Phase 2",
      "sticker_names": null
    }
  ]
}