Skip to content
API

Counter-Strike 2 developer API

CS2 API for skins, inventories, prices and Inspect

Use one WOK key to read public CS2 items, search saved USD market observations and inspect supported individual assets. Steam AppID 730 uses inventory context 2. Match history, competitive rank and player performance are outside this API.

game=cs2Steam AppID 730 / context 2

Updated

cs2 inventory request
curl --fail-with-body -H "Authorization: Bearer $WOK_API_KEY" --get "https://woksteamapi.com/v1/inventory" --data-urlencode "steam_id=76561198090744629" --data-urlencode "game=cs2" --data-urlencode "top=0"

Choose the endpoint for the data you need

One server-side WOK key authenticates every route below. An inventory request depends on Steam visibility; a saved catalog read does not depend on a player's profile.

TaskWOK requestResponse to check
Read public owned itemsGET /v1/inventory?game=cs2status, items, items_total, unpriced and meta.cache_age.
Browse matching market namesGET /v1/items?game=cs2&q=...Source-specific items[].prices[], market_hash_name and next_cursor.
Quote one exact itemGET /v1/price?game=cs2&name=...Selected price, source, sources and updated_at.
Read observed daily historyGET /v1/price-history?game=cs2&name=...Source and returned OHLC points; unobserved days are absent.
Decode supported CS2 assetsPOST /v1/cs2/inspectInspect access decodes modern links and resolves legacy links through Steam GC. Missing data is not inferred.
Read CS2 Market listing floatsGET /v1/cs2/market-listingsWith the Inspect add-on, read paginated current offers with observed float, seed and native-currency price. Send the exact market_hash_name and follow next_start. See the listing guide.

The catalog covers named items WOK has observed; it does not promise a current quote for every item or a complete past series. Read the history coverage rules before using sparse data in a chart.

Run an inventory read, catalog search and item quote

Set WOK_API_KEY on your server. The sample SteamID and item name show valid request syntax; visibility and saved price coverage can change.

Public inventory: all grouped rows
curl --fail-with-body -H "Authorization: Bearer $WOK_API_KEY" --get "https://woksteamapi.com/v1/inventory" --data-urlencode "steam_id=76561198090744629" --data-urlencode "game=cs2" --data-urlencode "top=0"
Search saved catalog
curl --fail-with-body -H "Authorization: Bearer $WOK_API_KEY" --get "https://woksteamapi.com/v1/items" --data-urlencode "game=cs2" --data-urlencode "q=AK-47 | Redline (Field-Tested)" --data-urlencode "limit=50"
Quote one exact market name
curl --fail-with-body -H "Authorization: Bearer $WOK_API_KEY" --get "https://woksteamapi.com/v1/price" --data-urlencode "game=cs2" --data-urlencode "name=AK-47 | Redline (Field-Tested)"

q is a substring search, so compare market_hash_name exactly and follow next_cursor. name in the quote route is exact and returns 404 if WOK has no saved quote. Both catalog endpoints read local observations; neither scans a player inventory or forces a live market fetch.

CS2 skins API: which request answers which skin question

Most Counter-Strike 2 skin integrations ask four things: what a player owns, what a skin is worth, which exact copy it is, and what the finish looks like. Each is a different WOK request.

Skins a player owns. GET /v1/inventory?game=cs2 returns the public skins, cases, stickers and agents with counts and matched USD values.

What a skin is worth. GET /v1/price?game=cs2&name=... quotes one market hash name, and GET /v1/price-history returns observed daily points. Browse the public CS2 skin price pages to see the same data without a key.

Which exact copy. Float, paint seed and stickers belong to one asset, so they need the Inspect add-on. See the CS2 float API guide.

What the finish looks like. The CS2 3D viewer previews supported finishes from an inspect link.

Do I need a Steam Web API key to use the WOK CS2 API?

No. Your server sends one WOK API key to WOK endpoints. A Valve Web API key authenticates Valve's own methods and is a different credential.

How do I get the price of a CS2 skin?

Send the exact market hash name to GET /v1/price?game=cs2. The answer names the selected source and updated_at. GET /v1/items searches saved names when you only know part of it.

Can the API return the float and pattern of a CS2 skin?

Only for a particular asset, with the Inspect add-on: include_inspect=1 on inventory rows, POST /v1/cs2/inspect for an inspect link, or GET /v1/cs2/market-listings for current Market offers. A market name price never implies a float.

Which price sources does the CS2 API use?

Saved Steam Market observations, sale medians and configured third-party sources. BUFF163 is opt-in with source=buff or price_source=buff; auto valuation does not include it.

Can I read a private CS2 inventory?

No. A private inventory returns status=private, which is not an empty inventory. WOK reads only what Steam shows publicly.

Does the CS2 API include match history or competitive rank?

No. It covers items and their values. FACEIT statistics are a separate integration.

CS2 market name, asset ID and Inspect answer different questions

A quote for a market hash name is a baseline for a class of items. It cannot identify the float, pattern or applied stickers of a particular asset.

GET /v1/inventory?game=cs2&top=0 returns grouped public items, counts, trade state and matched USD values. Read status first; private is not an empty inventory.

GET /v1/items?game=cs2&source=steam_market reads saved lowest-listing observations. Filter source=buff only when you explicitly need the separate BUFF163 catalog. Market names and timestamps must be checked per row.

With the Inspect add-on, include_inspect=1 exposes only valid Steam-supplied inspect actions. POST /v1/cs2/inspect decodes modern links locally and resolves legacy links through WOK’s Steam GC workers. Steam failures return HTTP 503 with Retry-After. Neither result appraises a float premium.

Inspect links, asset IDs and Doppler examplesCS2 3D finish previewsBUFF163 opt-in pricing rulesInventory value and fallback modesFACEIT data is a separate integration

Read status and freshness before displaying a value

CS2 saved observations can include Steam Market, sale medians and configured third-party sources. BUFF163 is opt-in: source=buff filters catalog rows, while price_source=buff with strict=1 changes inventory valuation. Auto does not include BUFF.

A native inventory may return HTTP 200 with status=private, notfound, limited or error. Do not display its total as a zero-value backpack. Authentication, quota and request validation have their own HTTP errors.

meta.cache_age describes the inventory snapshot. items[].priceupdatedat describes the selected saved price observation. These ages can differ because a cache hit can revalue the same item list locally.

The USD total includes only matched, counted items under WOK's value rules. Show unpriced and individual pricesource fields; market prices are estimates, not guaranteed sale proceeds.

CS2 inventory and Inspect referenceSteam Market source guidePrice quote and batch referenceOpenAPI contractRequest quotas