GET /v1/schema
返回一份包含所有 Counter-Strike 2 饰品的完整 schema。它会在游戏更新时自动更新,包含约 47,500 件饰品和约 110 个收藏品,按 market_hash_name 键控,并提供稀有度、外观与磨损区间、市场 id 和饰品图片。
支持变体。在适用时,饰品会列出其收藏品和容器。
访问
适用于所有套餐,包括 Demo 和 Developer。
请求
GETapi.cs2.sh/v1/schema
curl https://api.cs2.sh/v1/schema \
-H "Authorization: Bearer <<YOUR_API_KEY>>" \
-H "Accept-Encoding: gzip" --compressed响应
{
"schema_version": "v3",
"generated_at": "2026-08-12T22:18:51Z",
"counts": {
"items": 48696,
"by_category": {
"agent": 63,
"collectible": 468,
"container": 479,
"graffiti": 2111,
"highlight_reel": 926,
"key": 39,
"keychain": 78,
"music_kit": 188,
"patch": 112,
"skin": 21924,
"sticker": 11132,
"sticker_slab": 11132,
"tool": 4,
"vanilla_skin": 40
},
"collections": 110
},
"rarities": [
{
"key": "default",
"name": "Stock",
"tier": 0,
"color": "#b0c3d9"
},
{
"key": "common",
"name": "Consumer Grade",
"tier": 1,
"color": "#b0c3d9"
},
{
"key": "uncommon",
"name": "Industrial Grade",
"tier": 2,
"color": "#5e98d9"
},
{
"key": "rare",
"name": "Mil-Spec Grade",
"tier": 3,
"color": "#4b69ff"
},
{
"key": "mythical",
"name": "Restricted",
"tier": 4,
"color": "#8847ff"
},
{
"key": "legendary",
"name": "Classified",
"tier": 5,
"color": "#d32ce6"
},
{
"key": "ancient",
"name": "Covert",
"tier": 6,
"color": "#eb4b4b"
},
{
"key": "immortal",
"name": "Contraband",
"tier": 7,
"color": "#e4ae39"
}
],
"collections": {
"2025 Community Sticker Collection": {
"name": "2025 Community Sticker Collection",
"kind": "sticker",
"release_date": "2025-10-01",
"released_at": "2025-10-01T23:42:32Z",
"update_name": "Community Maps, Charms, and More",
"announcement_url": "https://steamcommunity.com/games/CSGO/announcements/detail/498333631688738073",
"image": "https://cs2.sh/image/5-y5BqjoeymuHNzv",
"steam_image": "https://cdn.steamstatic.com/apps/730/icons/econ/set_icons/set_community_2025.280d945244b90804541bf84784796793fd3bad00.png"
},
"Auto Racing Sticker Collection": {
"name": "Auto Racing Sticker Collection",
"kind": "sticker",
"release_date": "2026-07-08",
"released_at": "2026-07-08T22:50:43Z",
"update_name": "Season 5, Armory, and More",
"announcement_url": "https://steamcommunity.com/games/CSGO/announcements/detail/701021228894257509",
"image": "https://cs2.sh/image/UuGTutGWjf5OvoVM",
"steam_image": "https://cdn.steamstatic.com/apps/730/icons/econ/set_icons/set_auto_racing.2bb35a9a9c95a4757596a2ebd2085c73529f184b.png"
}
},
"items": {
"USP-S | Printstream (Factory New)": {
"market_hash_name": "USP-S | Printstream (Factory New)",
"category": "skin",
"image": "https://cs2.sh/image/N8Agkakkrq4y1Hm1",
"steam_image": "https://community.akamai.steamstatic.com/economy/image/i0CoZ81Ui0m-9KwlBY1L_18myuGuq1wfhWSaZgMttyVfPaERSR0Wqmu7LAocGIGz3UqlXOLrxM-vMGmW8VNxu5Dx60noTyLkjYbf7itX6vytbbZSI-WsG3SA_v5kue99XD2hkBwqjDGMnYftb3yUPFR0XsNyRrNc5kO5ltziMenr5lONj4kXyi2riywc7y9o5LtQAqQ7uvqAkScWnv4",
"is_tradable": true,
"rarity": {
"name": "Covert",
"tier": 6,
"color": "#eb4b4b"
},
"collections": [
"The Recoil Collection"
],
"containers": [
"Recoil Case"
],
"ids": {
"buff": 900565,
"youpin": 102375,
"c5game": 1017617021485346800
},
"def_index": 61,
"base_name": "USP-S | Printstream",
"weapon": "USP-S",
"finish": "Printstream",
"wears": [
"Factory New",
"Minimal Wear",
"Field-Tested",
"Well-Worn",
"Battle-Scarred"
],
"has_stattrak": true,
"has_souvenir": true,
"float_range": {
"min": 0,
"max": 0.85
},
"paint_index": 1142,
"wear": "Factory New",
"wear_float_range": {
"min": 0,
"max": 0.07
},
"stattrak": false,
"souvenir": false
},
"★ Karambit | Doppler (Factory New)": {
"market_hash_name": "★ Karambit | Doppler (Factory New)",
"category": "skin",
"image": "https://cs2.sh/image/vJQM7YiSwMZS1GsE",
"steam_image": "https://community.akamai.steamstatic.com/economy/image/i0CoZ81Ui0m-9KwlBY1L_18myuGuq1wfhWSaZgMttyVfPaERSR0Wqmu7LAocGIGz3UqlXOLrxM-vMGmW8VNxu5Dx60noTyL6kJ_m-B1Q7uCvZaZkNM-SA1iSze91u_FsTju_qhAmoT-Jn4bjJC_4Ml93UtZuRLQPsBawkNfiMbnl5AKMiopCnin7iCJBv31j4rkBBKEg-6zUjV3GY6p9v8dpLWT3Fg",
"is_tradable": true,
"rarity": {
"name": "Covert",
"tier": 6,
"color": "#eb4b4b"
},
"containers": [
"Chroma Case",
"Chroma 2 Case",
"Chroma 3 Case"
],
"ids": {
"buff": 42998,
"youpin": 1785,
"c5game": 22702
},
"def_index": 507,
"base_name": "★ Karambit | Doppler",
"weapon": "Karambit",
"finish": "Doppler",
"wears": [
"Factory New",
"Minimal Wear"
],
"has_stattrak": true,
"has_souvenir": false,
"float_range": {
"min": 0,
"max": 0.08
},
"wear": "Factory New",
"wear_float_range": {
"min": 0,
"max": 0.07
},
"stattrak": false,
"souvenir": false,
"variants": [
{
"market_hash_name": "★ Karambit | Doppler (Factory New) | Phase 1",
"family": "doppler",
"name": "Phase 1",
"image": "https://cs2.sh/image/f7tv2IWIqPDquMsV",
"steam_image": "https://community.akamai.steamstatic.com/economy/image/i0CoZ81Ui0m-9KwlBY1L_18myuGuq1wfhWSaZgMttyVfPaERSR0Wqmu7LAocGIGz3UqlXOLrxM-vMGmW8VNxu5Dx60noTyL6kJ_m-B1Q7uCvZaZkNM-SA1iUzv5mvOR7cDm7lA4i4gKJk4jxNWXFb1cpDJR2FOFbsBTql9bjYbzq7gPZiN1MxH7_2ytNuCdpte1UB_Ui5OSJ2GbkVqni",
"phase": "Phase 1",
"color": "#6e1b3a",
"paint_index": 418
}
]
}
},
"generation_id": "7645176062026597595"
}响应字段
SchemaResponse 字段:
| 字段 | 类型 | 必需 | 描述 |
|---|---|---|---|
schema_version | string | 是 | 目录 schema 版本。变化时客户端应重新同步。 |
generation_id | string | 是 | 此不可变 schema 代次的稳定标识符。 |
generated_at | string (date-time) | 是 | 此不可变 schema 代次的构建时间。比较 generation_id 可检测代次变化。 |
counts | object | 是 | 目录实体计数。 |
rarities | SchemaRarity[] | 是 | 稀有度分层。 |
collections | Record<string, SchemaCollection> | 是 | 按收藏品名称键控的收藏品元数据。 |
items | Record<string, SchemaItem> | 是 | 按 market_hash_name 键控的饰品记录。 |
饰品元数据
| 字段 | 描述 |
|---|---|
items | market_hash_name(与价格端点所接受的名称一致)到饰品元数据的映射。 |
items.<name>.ids | 在已知时提供 buff、youpin 和 c5game 市场 id。 |
items.<name>.def_index、paint_index | 游戏的饰品定义索引和涂装索引。 |
items.<name>.variants | 基础饰品上的变体元数据;变体行通过 variant 回链。 |
items.<name>.is_tradable | 对无法交易的饰品为 false。 |
collections、rarities | 饰品记录所引用的收藏品与稀有度分层。 |
- 不适用于某件饰品的字段会被省略。
schema_version描述响应格式。每次重新生成 schema 数据时,generation_id都会变化。
完整结构:SchemaItem、SchemaItemVariant、SchemaCollection 和 SchemaRarity。
错误
400 validation_error 表示请求包含查询参数或缺少 Accept-Encoding: gzip。503 service_unavailable 表示 schema 尚未就绪。共有错误见请求错误。