Skip to main content
GET
Games you can pass as appId
CSBoard sells CS2, Dota 2 and Rust items. You choose the game with the appId parameter, using Steam’s own appIds: 730 for CS2, 570 for Dota 2, 252490 for Rust. This endpoint lists the games your key can use and, for each one, whether it can buy there too (tradable). Authentication required. Send your key as Authorization: Bearer csb_pub_.... No balance is needed, so you can check this before you fund the account.

Example request

Example response

A game with tradable: false can be read through the market data endpoints but not bought yet.

Where appId works

Leave appId out and every endpoint answers for CS2, exactly as it did before the parameter existed.

What changes for Dota 2 and Rust

  • Same response shape. Dota 2 and Rust rows have the same keys as CS2 rows, so one parser reads all three. The CS2-only fields — wear, doppler_phase, float_value, paint_seed, inspect_link, tradable_at, listed_at — are null, and stickers is [].
  • CS2-only filters are refused, not ignored. Sending wear, min_float, max_float, stat_trak, souvenir, available_after or sort=newest with a Dota 2 or Rust appId answers 400 invalid_param. On GET /v1/prices only wear is CS2-only.
  • Orders are queued. A Dota 2 or Rust order answers delivery: "pending" and expected_minutes: null. Follow it with GET /v1/orders/{id}.
  • Ids belong to their game. Buy and check ids under the same appId you read them with.
These endpoints stay CS2 only and do not read appId: GET /v1/listings/stream, GET /v1/prices/snapshot.ndjson.gz and POST /v1/market/buy.

Error codes

An appId your key cannot use — unknown, switched off, or not open to you — answers 400 unsupported_game. The body lists what you can use:
On POST /v1/orders, supported_app_ids lists the games you can buy in.

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.

Response

Games available to this key.

games
object[]
required