GET /prices — List prices
Returns the current lowest ask across marketplaces. You can filter by item, phase, provider, and currency. Valid filters with no current matches return200 with an empty items array; 503 indicates the data source is temporarily unavailable.
Tiers: Free, Starter, Pro, Quant
Parameters
integer
Filter by item ID. Takes precedence over
market_hash_name and phase when provided.string
Exact item name as it appears in inventory. Ignored when
item_id is provided.string
Doppler or Gamma Doppler phase filter. Can be used without
market_hash_name. One of: Phase 1, Phase 2, Phase 3, Phase 4, Ruby, Sapphire, Black Pearl, Emerald.string[]
Provider keys to include. Repeat the parameter to pass more than one:
providers=steam&providers=buff163. Valid keys: avanmarket, buff163, buffmarket, c5, csdeals, csfloat, csgo500, csgoempire, csmoney_m, csmoney_t, cstrade, dmarket, dupefi, ecosteam, gameboost, haloskins, itradegg, lisskins, lootfarm, mannco, marketcsgo, pirateswap, rapidskins, shadowpay, skinbaron, skinflow, skinland, skinout, skinplace, skinport, skinscom, skinsmonkey, skinswap, skinswap_t, skinvault, steam, swapgg, tradeit, waxpeer, whitemarket, youpin.integer
Results per page. Defaults to the caller’s effective tier cap:
100 for Free, 1000 for Starter, Pro, and Quant.integer
default:"0"
Pagination offset.
Response example
Abbreviated response (ellipsis placeholders are not JSON):Response fields
string
Provider key for this listing.
integer
Unique catalog item ID.
string
Full item name as it appears in the Steam economy.
string
Doppler phase, or
null for non-phased items.integer
Current best ask price in minor units of the response currency. For example,
531143 in USD = $5,311.43.string
lowest_ask as a decimal string with adaptive precision: two decimal places at or above 1.0, eight below it. Use this for low-value currencies such as crypto, where the integer lowest_ask rounds to 0 (for example a $25.50 skin in BTC returns lowest_ask = 0, lowest_ask_decimal = "0.00041600").integer
Number of listings at or near the lowest ask on this provider.
string
CS2Cap tracked redirect URL. Available on all tiers.
string
Direct marketplace URL. Returned on Pro and Quant only.
string
When the price or quantity last changed.
string
When this record was last refreshed, even if the price stayed the same.
If the item exists in the catalog but none of the selected providers currently has a listing, the endpoint returns
200 with items: [].POST /prices — Stream full prices snapshot
Streams the complete live prices catalog as NDJSON, with one JSON object per line. The snapshot is captured once at request start and then streamed in full. Tiers: Pro, Quant Rate limit: rolling 24h quota of successful stream starts per API key — 50/day onpro, 300/day on quant, counted separately from POST /bids. One active stream per API key at a time (409 otherwise, with Retry-After).
Query parameters
string[]
Optional. Repeat to restrict the stream to specific providers. Uses the same provider keys as
GET /prices. If omitted, all providers are included.Response example
POST /prices/batch — Batch prices lookup
Returns current lowest asks for up to 100 items in a single request, grouped by item ID across the selected providers. Tiers: Starter, Pro, QuantRequest body
integer[]
Array of item IDs to fetch. Provide at least one of
item_ids or market_hash_names.string[]
Array of market hash names to fetch. Provide at least one of
item_ids or market_hash_names.string[]
Provider keys to include. If omitted, all providers are queried.
Request example
Response example
Abbreviated response (ellipsis placeholders are not JSON):object[]
Array of results, one entry per resolved item.
integer[]
Item IDs (including those resolved from
market_hash_names) that returned no quotes on any queried provider.string[]
market_hash_names that could not be resolved to any catalog item.GET /prices/candles — Price candles (OHLCV)
Returns composite OHLCV candles across all providers for the resolved item. Supports5m, 1h, and 1d intervals. Empty buckets can optionally be forward-filled.
Tiers: Free (1d only), Starter (1d only), Pro, Quant
Parameters
integer
Item ID to query. Required if
market_hash_name is not provided.string
Exact item name. Required if
item_id is not provided.string
Doppler or Gamma phase filter. One of:
Phase 1, Phase 2, Phase 3, Phase 4, Ruby, Sapphire, Black Pearl, Emerald.string
Inclusive ISO 8601 start timestamp. Accepts
YYYY-MM-DD or YYYY-MM-DDThh:mm:ss.string
Exclusive ISO 8601 end timestamp. Defaults to the current time when omitted.
string
Duration shorthand such as
7d or 30. When sent with start or end, lookback takes precedence and selects a completed time window. For interval=1h, the window includes a short delay to ensure the latest bucket is fully complete.string
default:"1d"
Candle interval. One of:
5m, 1h, 1d.boolean
default:"false"
Forward-fill empty buckets using the previous close.
string
default:"USD"
Target currency. Use
/v1/fx for the currently supported currency codes. Unsupported codes return 422; temporary FX-rate unavailability returns 503.Response example
meta.start and meta.end describe the effective query window. With fill=false, data can be sparse inside that window; use fill=true to forward-fill empty buckets.
Abbreviated response (ellipsis placeholders are not JSON):
Response fields
integer
Unix timestamp in seconds for the start of the candle bucket.
integer
Open price — the lowest ask price at the start of the bucket, in minor units.
integer
High price in minor units — the highest the best available ask reached within the bucket.
integer
Low price in minor units — the lowest the best available ask reached within the bucket.
integer
Close price — the lowest ask price at the end of the bucket, in minor units.
integer
Estimated trade volume for the bucket. Derived from inventory changes rather than reported sale counts.
integer
Total number of active listings at the end of the bucket. May be
null for older 1d windows.object
Identifies which provider contributed the open (
o), high (h), low (l), and close (c) values for this candle.Data retention
Free and Starter accounts may only use
interval=1d. The fill, start, and end parameters are not available on those tiers — use lookback instead.GET /prices/history — Price history
Returns historical price records for one item, optionally filtered to a single provider. Results are ordered newest-first and use cursor pagination. Tiers: Pro, QuantParameters
integer
Filter by item ID. Takes precedence over
market_hash_name and phase when provided.string
Exact item name as it appears in inventory.
string
Doppler or Gamma phase filter. One of:
Phase 1, Phase 2, Phase 3, Phase 4, Ruby, Sapphire, Black Pearl, Emerald.string
A single provider key, for example
provider=steam. Returns records from that provider only.string
Inclusive ISO 8601 timestamp. Accepts
YYYY-MM-DD or YYYY-MM-DDThh:mm:ss. Defaults to the last 14 days when omitted.string
Exclusive ISO 8601 timestamp.
string
default:"USD"
Target currency. Accepts 200+ ISO 4217 codes.
integer
Results per page. Range: 1–1000.
string
Cursor for keyset pagination. Pass the
next_cursor value from the previous response.Response example
Abbreviated response (ellipsis placeholders are not JSON):Response fields
integer
Catalog item ID.
string
Full item name.
string
Doppler phase or
null.string
Provider name for this record.
string
ISO 8601 timestamp of the price observation.
integer
Price in minor units of the response currency.
string
ISO 4217 currency code for the returned price.
integer
Listing count observed at this timestamp.
pagination.total is always -1 on this endpoint. Use has_next and next_cursor to paginate.