Steam Community Market · CS2 & Rust

Steam Market API

A REST API for Steam Community Market prices — every CS2 and Rust item, swept continuously, with daily price history and the same item priced across 11 third-party marketplaces in one response. This is not Valve’s Steam Web API: it is an independent Steam market API built for trading sites, bots and marketplaces. Grab a free key or read the docs.

36,831
items priced
12
price sources
2013
history from
30+
currencies

Is there an official Steam Market API?

There isn’t. Valve’s Steam Web API has no market-price methods, so most projects end up scraping the undocumented priceoverview and pricehistory endpoints behind the market pages. Those answer one item per request, throttle hard per IP, need a logged-in cookie for history, and return prices in whatever currency the cookie’s account uses. The Steam Subscriber Agreement also forbids automating the market itself.

This API takes the other route: it reads the public market continuously on its own infrastructure, normalises every price to integer minor units with an explicit currency, and serves the result from one documented endpoint with a key, a quota and a capture timestamp on every number. You never talk to Steam.

What the Steam market API returns

EndpointWhat you get
GET /api/v1/items/{name}One item: Steam lowest ask and listing count, the cross-market best price and which market it came from, plus item metadata.
GET /api/v1/items/{name}/marketsThe same item on every marketplace — lowest ask, listing count and capture time per venue, and the spread.
GET /api/v1/items/{name}/historyDaily price series: Steam median sale back to 2013, and each market’s daily lowest ask.
GET /api/v1/items/allThe whole catalog as one price sheet — 36,831 items, optionally with every market inline.
POST /api/v1/items/pricesBulk lookup: send a list of names, get their prices back in one round trip.

Example: one item, every market

curl "https://steamdataapi.com/api/v1/items/AK-47%20%7C%20Redline%20(Field-Tested)?game=cs2" \
  -H "Authorization: Bearer sdk_YOUR_KEY"
const name = encodeURIComponent('AK-47 | Redline (Field-Tested)');
const res = await fetch(`https://steamdataapi.com/api/v1/items/${name}?game=cs2`, {
  headers: { Authorization: 'Bearer sdk_YOUR_KEY' },
});
const item = await res.json();
console.log(item.prices.best, item.prices.bestSource); // cheapest venue right now

Prices are integers in minor units (cents) with a currency field beside them — never floats, never a bare number you have to guess the unit of. Add ?currency=EUR (or any of 30+ codes) to convert.

Steam is one source of 12

A Steam-only price is often not the real price: Steam’s 15% cut and its wallet-only balance push rare CS2 skins well below what they fetch elsewhere. Every item here also carries the lowest ask from Skinport, CSFloat, Buff163, DMarket, Waxpeer, Lis-Skins, SkinBaron, HaloSkins, WhiteMarket, YouPin898, C5Game, so you can show where it is actually cheapest, or the spread between venues, without integrating eleven APIs with eleven auth schemes.

CS2 and Rust

The CS2 skin API covers 31,393 items — including per-phase Doppler pricing, case and capsule drop tables, and float and pattern data on inventory reads. The Rust skin API covers 5,438 items from the survival game, priced from Steam and the handful of markets that actually list Rust. Pass ?game=cs2 or ?game=rust; the response shape is identical.

Beyond prices

The same key reads whole inventories: the Steam inventory API takes a public SteamID and returns every item priced, with a portfolio total. For ideas, see 5 things you can build with a Steam market API and why Steam undervalues rare CS2 skins.

Frequently asked questions

Is there an official Steam Market API?

No. Valve’s Steam Web API covers players, apps and achievements but has no market-price methods. The endpoints community scripts scrape (priceoverview, pricehistory) are undocumented, answer one item at a time, are heavily rate-limited per IP and return prices in the caller’s own currency. This is an independent Steam market API that reads the public market continuously and serves it as one clean, documented REST endpoint.

Which games does the Steam market API cover?

Counter-Strike 2 (31,393 items) and Rust (5,438 items) — every tradable skin, knife, glove, sticker, case, capsule, agent, charm and Rust item on the Steam Community Market.

How fresh are the prices?

The Steam catalog is swept continuously, and the 11 third-party marketplaces refresh every 5–30 minutes each. Every price carries a capture timestamp so you always know how old it is.

Does it include price history?

Yes. Steam’s median-sale series reaches back to 2013-08-13 for the oldest items, and every third-party market accrues a daily lowest-ask series — 16,444,511 daily points in total, served per item or in bulk.

Can I get prices in my own currency?

Yes. Pass ?currency= with any of 30+ ISO codes and every price field comes back converted at the current ECB rate, with the currency named in the response.

Is there a free tier?

Yes. Create an account, copy the key from the dashboard and call the API. Paid plans raise the per-minute and monthly limits per endpoint group.

Start building

Free key, no card. Create one and make your first Steam market API call in a minute. Limits are on pricing; every endpoint is in the reference.