GET /bids — List bids
Returns the current highest buy order across buy-order-enabled providers. 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: 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[]
Buy-order provider keys to include. Repeat to pass more than one:
providers=steam&providers=buff163. Valid keys: buff163, buffmarket, c5, csfloat, dmarket, dupefi, ecosteam, marketcsgo, steam, waxpeer, whitemarket, youpin.integer
Results per page. Range: 1–1000. Defaults to the caller’s effective tier cap.
integer
default:"0"
Pagination offset.
Response example
Abbreviated response (ellipsis placeholders are not JSON):Response fields
integer
Catalog item ID.
string
Full item name as it appears in the Steam economy.
string
Doppler phase, or
null for non-phased items.string
Provider key for this buy order.
integer
Current best bid price in minor units of the response currency. For example,
3923 with currency=EUR = €39.23.string
highest_bid 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 highest_bid rounds to 0 (for example a $25.50 bid in BTC returns highest_bid = 0, highest_bid_decimal = "0.00041600").integer
Total number of active buy orders at this provider for the item.
string
When the bid or quantity last changed.
string
When this record was last refreshed, even if the bid stayed the same.
If the item exists in the catalog but none of the selected providers currently has a buy order, the endpoint returns
200 with items: [].POST /bids — Stream full bids snapshot
Streams the complete live buy-orders catalog as NDJSON, with one JSON object per line. The snapshot is captured once at request start and then streamed in full. Tiers: Starter, 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 /prices. 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 buy-order providers. Uses the same provider keys as
GET /bids. If omitted, all buy-order providers are included.Response example
POST /bids/batch — Batch bids lookup
Returns current highest buy orders for up to 100 items in a single request, grouped by item ID across the selected buy-order 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[]
Buy-order provider keys to include. If omitted, all supported buy-order providers are queried. Valid keys:
buff163, buffmarket, c5, csfloat, dmarket, dupefi, ecosteam, marketcsgo, steam, waxpeer, whitemarket, youpin.Request example
Response example
Abbreviated response (ellipsis placeholders are not JSON):Response fields
object[]
Array of results, one entry per resolved item.
integer[]
Item IDs (including those resolved from
market_hash_names) that returned no bids on any queried provider.string[]
market_hash_names that could not be resolved to any catalog item.GET /bids/history — Bid history
Returns historical buy-order records for one item, optionally filtered to a single provider. Results are ordered newest-first and use cursor pagination. Requests reaching back more than 35 days return hourly buckets; more than 365 days, daily buckets. History is available from September 2026 onward. 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 buy-order provider key, for example
provider=csfloat. Returns records from that provider only. Only providers with buy-order support are accepted. Valid keys: buff163, buffmarket, c5, csfloat, dmarket, dupefi, ecosteam, marketcsgo, steam, waxpeer, whitemarket, youpin. Any other value returns 422.string
Inclusive ISO 8601 timestamp. Accepts
YYYY-MM-DD or YYYY-MM-DDThh:mm:ss. Defaults to the last 35 days when omitted.string
Inclusive 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 buy-order observation. For bucketed rows, the start of the bucket.
integer
Highest bid in minor units of the response currency.
string
ISO 4217 currency code for the returned bid.
integer
Number of active buy orders observed at this timestamp.
pagination.total is always -1 on this endpoint. Use has_next and next_cursor to paginate.