{"openapi":"3.1.0","info":{"title":"CS2Collections.net API","version":"1.0.0","summary":"Read-only CS2 skin prices, Steam inventory appraisal, pro teams and players","description":"Public read-only API of cs2collections.net. Prices are the best buy-now offer aggregated across market feeds (Skinport, Market.CSGO, DMarket, CSFloat, Waxpeer, White.Market, CSBoard) and the Steam Community Market, in USD, refreshed roughly hourly. The site does not sell items. Item pages live at the url fields of every response.","termsOfService":"https://cs2collections.net/privacy","contact":{"name":"CS2Collections.net","url":"https://cs2collections.net/ru/about"},"license":{"name":"CC BY-SA 4.0 for the teams and players data, attribution with a link to cs2collections.net is required","url":"https://creativecommons.org/licenses/by-sa/4.0/"}},"servers":[{"url":"https://cs2collections.net"}],"paths":{"/api/v1/inventory":{"get":{"operationId":"appraiseInventory","summary":"Appraise a public CS2 Steam inventory","description":"Resolves a Steam profile and returns the total value of its CS2 inventory with the most expensive items. The inventory must be public in Steam privacy settings. A fresh appraisal can take a few seconds; on 503 retry after the Retry-After delay. Owners can hide their inventory on the site, then 403 hidden is returned.","parameters":[{"name":"steam","in":"query","required":true,"description":"Steam profile URL (steamcommunity.com/id/<name> or /profiles/<id>), a 17-digit SteamID64 or a custom URL name","schema":{"type":"string","maxLength":200},"example":"https://steamcommunity.com/id/gabelogannewell"}],"responses":{"200":{"description":"Appraisal","content":{"application/json":{"schema":{"type":"object","properties":{"steamId":{"type":"string"},"profileUrl":{"type":"string"},"name":{"type":"string"},"avatar":{"type":"string"},"level":{"type":["integer","null"]},"currency":{"type":"string","const":"USD"},"value":{"type":"number","description":"Total value of priced items, USD"},"items":{"type":"integer","description":"Items in the inventory"},"priced":{"type":"integer","description":"Items that have a market price"},"checkedAt":{"type":"string","format":"date-time"},"stale":{"type":"boolean","description":"true when a cached appraisal is returned while a fresh one is computed"},"topItems":{"type":"array","items":{"type":"object","properties":{"name":{"type":"string"},"price":{"type":"number"},"count":{"type":["integer","null"]},"image":{"type":"string"},"url":{"type":["string","null"],"description":"Item page on the site"}}}},"publicPage":{"type":["string","null"],"description":"Public inventory page, only when the owner shared it"},"pricing":{"type":"string"},"source":{"type":"string"}},"required":["steamId","value","items","priced","checkedAt","currency"]}}}},"400":{"description":"Missing steam parameter","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}},"403":{"description":"private (Steam inventory is private) or hidden (owner opted out)","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}},"404":{"description":"Profile not found","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}},"429":{"description":"Cooldown or hourly limit, see Retry-After","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}},"503":{"description":"Appraisal in progress, retry after Retry-After seconds","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}}}}},"/api/v1/price":{"get":{"operationId":"searchPrices","summary":"Find CS2 items by name and get their current prices","description":"Full-text search over skins, stickers, cases, agents, charms, collections and weapons. Skins return a price per wear plus StatTrak™ and Souvenir variants when they exist. Prices are USD best buy-now offers; null means no listing right now.","parameters":[{"name":"q","in":"query","required":true,"description":"Item name or part of it, e.g. \"AK-47 Redline\"","schema":{"type":"string","minLength":2,"maxLength":64},"example":"AK-47 Redline"}],"responses":{"200":{"description":"Matches with prices","content":{"application/json":{"schema":{"type":"object","properties":{"query":{"type":"string"},"currency":{"type":"string","const":"USD"},"pricing":{"type":"string"},"results":{"type":"array","items":{"type":"object","properties":{"type":{"type":"string","enum":["skin","collection","sticker","agent","keychain","case","weapon"]},"name":{"type":"string"},"url":{"type":"string","description":"Page on the site"},"image":{"type":"string"},"rarity":{"type":["string","null"]},"collection":{"type":["string","null"]},"currency":{"type":"string","const":"USD"},"price":{"type":["number","null"],"description":"Cheapest wear, USD"},"wears":{"type":"array","items":{"type":"object","properties":{"wear":{"type":["string","null"]},"price":{"type":["number","null"],"description":"USD, best buy-now offer"}},"required":["wear","price"]}},"stattrak":{"type":"array","items":{"type":"object","properties":{"wear":{"type":["string","null"]},"price":{"type":["number","null"],"description":"USD, best buy-now offer"}},"required":["wear","price"]}},"souvenir":{"type":"array","items":{"type":"object","properties":{"wear":{"type":["string","null"]},"price":{"type":["number","null"],"description":"USD, best buy-now offer"}},"required":["wear","price"]}}},"required":["type","name","url","price"]}}},"required":["query","results"]}}}},"400":{"description":"Query too short","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}}}}},"/api/v1/teams":{"get":{"operationId":"listTeams","summary":"Top CS2 teams by the official Valve ranking","description":"Every team of the current Valve Regional Standings with rank, points, region, rank change since the previous standings, roster nicknames, coaches, links (Liquipedia, HLTV, FACEIT) and social profiles. Data is licensed CC BY-SA 4.0: when you reuse it, credit CS2Collections.net with a link. Every response carries license, attribution and sources fields plus a Link: rel=\"license\" header.","parameters":[{"name":"region","in":"query","required":false,"description":"Filter by Valve region","schema":{"type":"string","enum":["europe","americas","asia"]}}],"responses":{"200":{"description":"Team list","content":{"application/json":{"schema":{"allOf":[{"type":"object","description":"License and attribution terms, present in every teams and players response","properties":{"license":{"type":"string","const":"CC BY-SA 4.0"},"licenseUrl":{"type":"string"},"attribution":{"type":"string","description":"Credit line to show when reusing the data"},"attributionRequired":{"type":"boolean","const":true},"sources":{"type":"object","additionalProperties":{"type":"string"}},"updatedAt":{"type":"string"}},"required":["license","attribution","attributionRequired","updatedAt"]},{"type":"object","properties":{"standingsDate":{"type":["string","null"],"format":"date"},"count":{"type":"integer"},"teams":{"type":"array","items":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"url":{"type":"string","description":"Team page on the site"},"valveName":{"type":"string","description":"Name as written in the Valve standings"},"rank":{"type":["integer","null"]},"rankDelta":{"type":["integer","null"],"description":"Places gained (positive) or lost since the previous standings"},"points":{"type":["integer","null"]},"region":{"type":["string","null"],"enum":["europe","americas","asia",null]},"regionRank":{"type":["integer","null"]},"standingsDate":{"type":"string","format":"date"},"country":{"type":["string","null"],"description":"ISO 3166-1 alpha-2, lowercase"},"logo":{"type":["string","null"]},"roster":{"type":"array","items":{"type":"string"},"description":"Player nicknames"},"coaches":{"type":"array","items":{"type":"string"}},"links":{"type":"object","properties":{"liquipedia":{"type":["string","null"]},"hltv":{"type":["string","null"]},"faceit":{"type":["string","null"]}}},"socials":{"type":"object","additionalProperties":{"type":"string"},"description":"website, twitter, instagram, youtube, twitch, tiktok, facebook, vk, telegram, discord"}},"required":["slug","name","url","rank","roster"]}}},"required":["count","teams"]}]}}}}}}},"/api/v1/teams/{slug}":{"get":{"operationId":"getTeam","summary":"Team profile: roster, trophies, current events, recent matches, map stats and rank history","description":"Full profile of one team by its slug from /api/v1/teams. Includes the roster with player pages and links, Liquipedia summary, trophies with tier and prize, tournaments being played now and the next scheduled match, the last finished matches with the win/loss form, per-map results over the last 30 games and the Valve rank history. CC BY-SA 4.0, attribution required.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"example":"vitality"}],"responses":{"200":{"description":"Team profile","content":{"application/json":{"schema":{"allOf":[{"type":"object","description":"License and attribution terms, present in every teams and players response","properties":{"license":{"type":"string","const":"CC BY-SA 4.0"},"licenseUrl":{"type":"string"},"attribution":{"type":"string","description":"Credit line to show when reusing the data"},"attributionRequired":{"type":"boolean","const":true},"sources":{"type":"object","additionalProperties":{"type":"string"}},"updatedAt":{"type":"string"}},"required":["license","attribution","attributionRequired","updatedAt"]},{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"url":{"type":"string","description":"Team page on the site"},"valveName":{"type":"string","description":"Name as written in the Valve standings"},"rank":{"type":["integer","null"]},"rankDelta":{"type":["integer","null"],"description":"Places gained (positive) or lost since the previous standings"},"points":{"type":["integer","null"]},"region":{"type":["string","null"],"enum":["europe","americas","asia",null]},"regionRank":{"type":["integer","null"]},"standingsDate":{"type":"string","format":"date"},"country":{"type":["string","null"],"description":"ISO 3166-1 alpha-2, lowercase"},"logo":{"type":["string","null"]},"roster":{"type":"array","items":{"type":"string"},"description":"Player nicknames"},"coaches":{"type":"array","items":{"type":"string"}},"links":{"type":"object","properties":{"liquipedia":{"type":["string","null"]},"hltv":{"type":["string","null"]},"faceit":{"type":["string","null"]}}},"socials":{"type":"object","additionalProperties":{"type":"string"},"description":"website, twitter, instagram, youtube, twitch, tiktok, facebook, vk, telegram, discord"}},"required":["slug","name","url","rank","roster"]},{"type":"object","properties":{"aliases":{"type":"array","items":{"type":"string"}},"roster":{"type":"array","items":{"type":"object","properties":{"nick":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"url":{"type":"string","description":"Player page on the site"},"country":{"type":"string","description":"ISO 3166-1 alpha-2, lowercase"},"role":{"type":"string","description":"player, coach or a staff role"},"igl":{"type":"boolean"},"joined":{"type":["string","null"],"format":"date"},"photo":{"type":["string","null"]},"links":{"type":"object","properties":{"liquipedia":{"type":["string","null"]},"hltv":{"type":["string","null"]},"faceit":{"type":["string","null"]},"steam":{"type":["string","null"]}}}},"required":["nick","slug","url"]}},"about":{"type":["object","null"],"properties":{"text":{"type":"string"},"source":{"type":"string","description":"Liquipedia page"},"at":{"type":"string","format":"date-time"}}},"trophies":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"name":{"type":"string"},"tier":{"type":["string","null"],"description":"s, a, b, c or d"},"prize":{"type":["number","null"],"description":"USD"},"liquipedia":{"type":["string","null"]}}}},"events":{"type":["object","null"],"properties":{"tournaments":{"type":"array","items":{"type":"object"}},"next":{"type":["object","null"],"properties":{"opponent":{"type":"string"},"opponentSlug":{"type":["string","null"]},"start":{"type":"string","format":"date-time"},"bo":{"type":["integer","null"]}}}}},"form":{"type":["object","null"],"properties":{"at":{"type":"string","format":"date-time"},"recent":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","format":"date-time"},"opponent":{"type":"string"},"opponentSlug":{"type":["string","null"]},"score":{"type":"array","items":{"type":"integer"},"description":"[ours, theirs]"},"win":{"type":"boolean"},"bo":{"type":["integer","null"]},"tournament":{"type":"string"},"tier":{"type":["string","null"]}}}},"maps":{"type":"array","items":{"type":"object","properties":{"map":{"type":"string","example":"de_mirage"},"played":{"type":"integer"},"won":{"type":"integer"}}}}}},"rankHistory":{"type":"array","items":{"type":"object","properties":{"date":{"type":"string","format":"date"},"rank":{"type":"integer"},"regionRank":{"type":["integer","null"]},"points":{"type":["integer","null"]}}}}}}]}}}},"404":{"description":"Unknown slug","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}}}}},"/api/v1/players/{slug}":{"get":{"operationId":"getPlayer","summary":"Player of a ranked team","description":"One player by slug (lowercase nickname, non-alphanumerics replaced by dashes, see roster[].slug in a team profile): real name, country, role, in-game leader flag, join date, photo, links (Liquipedia, HLTV, FACEIT, Steam) and the current team. CC BY-SA 4.0, attribution required.","parameters":[{"name":"slug","in":"path","required":true,"schema":{"type":"string"},"example":"zywoo"}],"responses":{"200":{"description":"Player","content":{"application/json":{"schema":{"allOf":[{"type":"object","description":"License and attribution terms, present in every teams and players response","properties":{"license":{"type":"string","const":"CC BY-SA 4.0"},"licenseUrl":{"type":"string"},"attribution":{"type":"string","description":"Credit line to show when reusing the data"},"attributionRequired":{"type":"boolean","const":true},"sources":{"type":"object","additionalProperties":{"type":"string"}},"updatedAt":{"type":"string"}},"required":["license","attribution","attributionRequired","updatedAt"]},{"type":"object","properties":{"nick":{"type":"string"},"name":{"type":"string"},"slug":{"type":"string"},"url":{"type":"string","description":"Player page on the site"},"country":{"type":"string","description":"ISO 3166-1 alpha-2, lowercase"},"role":{"type":"string","description":"player, coach or a staff role"},"igl":{"type":"boolean"},"joined":{"type":["string","null"],"format":"date"},"photo":{"type":["string","null"]},"links":{"type":"object","properties":{"liquipedia":{"type":["string","null"]},"hltv":{"type":["string","null"]},"faceit":{"type":["string","null"]},"steam":{"type":["string","null"]}}}},"required":["nick","slug","url"]},{"type":"object","properties":{"team":{"type":"object","properties":{"slug":{"type":"string"},"name":{"type":"string"},"url":{"type":"string"},"rank":{"type":["integer","null"]},"logo":{"type":["string","null"]}}}}}]}}}},"404":{"description":"Unknown slug","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string"},"message":{"type":"string"}},"required":["error","message"]}}}}}}}}}