CS.TRADE Rust API

CS.TRADE is a bot trading site with a public Rust price list. The row is the USD price of the cheapest copy and the bot stock behind it.

  • CS.TRADE Rust API
  • CS.TRADE Rust skin prices
  • RustMarketAPI CS.TRADE
  • markets=cstrade
  • CS.TRADE price history API
  • cs.trade Rust prices API

Schema and API docs

RouteWhat it doesCost
GET/v1/listings/latest/aggregateCurrent CS.TRADE price for one item: lowest ask and units available.1 credit
GET/v1/listings/history/aggregateSeven days of CS.TRADE price changes for this item. Pass an older since to go further back.2 credits
GET/v1/itemsCatalog search by Steam name: category, icon, cheapest ask and market count.1 credit
GET/v1/listings/latest/aggregate

Current price of one item. markets=cstrade limits the answer to CS.TRADE.

Query

FieldDescription
X-API-KeyHeader with your API key (or ?key=).
market_hash_nameExact Steam name. Example: Doodle AK47
marketsThis page uses cstrade. Add more codes, or omit for all 17 markets.
currencyUSD (default), EUR, GBP, CNY, RUB, BRL or TRY.

Response fields

FieldWhat you get
market_hash_nameEcho of the requested Steam name.
listings[]One row per selected market with a price. Here: one cstrade row.
listings[].ask_priceLowest cash ask in the requested currency.
listings[].listingsUnits available.
listings[].median_price / mean_price / max_priceBook stats when the market reports them.
listings[].price_type / balanceWhat the price means; see GET /v1/markets.
listings[].availableFalse when the market no longer lists the item or the price went stale.
listings[].timestamp / changed_atLast confirmation and last change of the price.
listings[].market_linkDirect link to the item on CS.TRADE.

Request

curl -G "https://rustmarketapi.com/api/v1/listings/latest/aggregate" \ -H "X-API-Key: YOUR_KEY" \ --data-urlencode "market_hash_name=Doodle AK47" \ --data-urlencode "markets=cstrade"

Live response · application/json

GET/v1/listings/history/aggregate

Every stored change of the CS.TRADE price, newest first. Each state lasts until the next newer row.

Query

FieldDescription
X-API-KeyHeader with your API key (or ?key=).
market_hash_nameExact Steam name. Example: Doodle AK47
marketscstrade
currencyUSD (default), EUR, GBP, CNY, RUB, BRL or TRY.
sinceISO 8601, unix seconds or relative (24h, 7d, 4w). Omit for the full history; older windows cost more.

Response fields

FieldWhat you get
marketsMap of code → { market_link, price_type }. Filtered call has only cstrade.
seriesMap of code → changes, newest first. The live body is the whole 7-day window.
series.cstrade[].ask_pricePrice during that state; null while unavailable.
series.cstrade[].listingsCount during that state.
series.cstrade[].observed_atStart of the state.

Request

curl -G "https://rustmarketapi.com/api/v1/listings/history/aggregate" \ -H "X-API-Key: YOUR_KEY" \ --data-urlencode "market_hash_name=Doodle AK47" \ --data-urlencode "markets=cstrade" \ --data-urlencode "since=7d"

Live response · application/json

GET/v1/items

Catalog search. q is a case-insensitive part of the name, max 25 results. Without q the full catalog streams (20 credits).

Query

FieldDescription
X-API-KeyHeader with your API key (or ?key=).
qPart of market_hash_name. Example: Doodle AK47

Response fields

FieldWhat you get
[].market_hash_nameExact Steam Community Market name. Use it for every other endpoint.
[].name / categoryDisplay name and Steam item type, e.g. Rifle or Hoodie.
[].icon_urlSteam icon URL.
[].markets / listingsMarkets with a current price and their combined count.
[].lowest_price / lowest_price_marketCheapest current cash ask in USD and where it is.

Request

curl -G "https://rustmarketapi.com/api/v1/items" \ -H "X-API-Key: YOUR_KEY" \ --data-urlencode "q=Doodle AK47"

Live response · application/json

Other markets