Skip to main content
GET
minAsk price list
The prices endpoint returns a grouped price snapshot of the CSBoard marketplace. Each row represents a unique combination of market_hash_name, wear, and doppler_phase, and carries the cheapest current asking price together with how many copies are listed. This makes it efficient for building price comparison tables, alerting pipelines, or portfolio valuation — you can retrieve pricing for thousands of items without pulling individual listings. Authentication required. Send your key as Authorization: Bearer csb_pub_....
Pass appId=570 for Dota 2 or appId=252490 for Rust. For those games each row is one market_hash_name, with wear and doppler_phase set to null. See Games. Only need one number per name? GET /v1/public/prices works without a key.

Query parameters

integer
default:"730"
Game to read: 730 = CS2, 570 = Dota 2, 252490 = Rust. Omit it for CS2. See GET /v1/games for the games your key can use.
Fuzzy match on market_hash_name — splits the query into words and substring-matches each. A name that is a word-subset of a longer item’s name (e.g. Spectrum Case vs Spectrum 2 Case) cannot be isolated this way; use name for an exact lookup.
string
Exact market_hash_name (case-insensitive) — the precise single-item lookup. name=Spectrum Case returns only the Spectrum Case group, never Spectrum 2 Case. Takes precedence over search.
string
Filter by item category, e.g. Rifle, Knife, Gloves.
string
Filter by wear bucket. One of: Factory New, Minimal Wear, Field-Tested, Well-Worn, Battle-Scarred. CS2 only — with another appId it answers 400 invalid_param.
string
Filter by rarity tier, e.g. Classified, Covert.
number
Minimum min_price_usd in USD (inclusive).
number
Maximum min_price_usd in USD (inclusive).
string
Keyset pagination cursor. Pass the next_cursor value from the previous response.
integer
default:"100"
Number of rows per page. Minimum 1, maximum 500.

Response fields

PriceRow[]
required
Array of price rows for this page.
string | null
required
Keyset cursor for the next page. Pass as cursor on the next request. null on the last page.

Example request

Example response

Error codes

The prices endpoint returns an indicative grouped snapshot. The data is periodically materialized and can lag behind the live marketplace. Use GET /v1/listings for the authoritative, real-time asking price of a specific item before placing an order.

Authorizations

Authorization
string
header
required

Send your key as a Bearer token on every request: Authorization: Bearer csb_pub_.... Generate keys in your CSBoard profile.

Query Parameters

appId
enum<integer>
default:730

Steam appId of the game. 730 = CS2 (the default), 570 = Dota 2, 252490 = Rust. Omit it and the endpoint answers for CS2 exactly as before. An appId this key may not use answers 400 unsupported_game, whose supported_app_ids lists the ones it may — see GET /games.

Available options:
730,
570,
252490

Full-text match on market hash name.

name
string

Exact market_hash_name (case-insensitive) — the precise single-item lookup. Unlike fuzzy search, it isolates one item even when its name is a word-subset of a longer one (e.g. Spectrum Case vs Spectrum 2 Case). Takes precedence over search.

category
string

e.g. Rifle, Knife, Gloves.

wear
enum<string>

Item wear bucket. CS2 only — sent with another appId it answers 400 invalid_param.

Available options:
Factory New,
Minimal Wear,
Field-Tested,
Well-Worn,
Battle-Scarred
rarity
string

e.g. Classified, Covert.

min_price
number

Minimum price in USD.

max_price
number

Maximum price in USD.

cursor
string

Keyset cursor from next_cursor.

limit
integer
default:100

1–500. Default 100.

Required range: 1 <= x <= 500

Response

A page of price rows.

items
object[]
required
next_cursor
string | null
required