Steam
Инвентарь
Получи инвентарь Steam-пользователя для указанного приложения и контекста — возвращает ассеты вместе с описаниями, которые раскрывают визуальные и рыночные метаданные каждого ассета.
Эндпоинт
Этот endpoint возвращает инвентарь Steam-пользователя для конкретного приложения и контекста. Ответ повторяет собственную структуру инвентаря Steam: массив assets со списком принадлежащих пользователю предметов и массив descriptions, который раскрывает визуальные и рыночные метаданные каждого ассета по classid + instanceid.
GET /v2/steam/users/{steamid}/inventory/{appId}/{contextId}
Обязательные параметры
steamid
string
Steam ID пользователя, чей инвентарь ты хочешь получить. Принимает различные форматы Steam ID.
appId
number
Steam application ID игры, инвентарь которой ты хочешь получить (например,
730 для Counter-Strike 2).contextId
number
Context ID внутри инвентаря приложения. Для большинства игр context ID равен
2.Аутентификация
Включи свой API-ключ в request header x-api-key.
x-api-key: YourSecretAPIKey
Поля ответа
| Поле | Тип | Описание |
|---|---|---|
assets | array | Предметы, принадлежащие пользователю. Каждый ассет ссылается на описание через classid + instanceid. |
descriptions | array | Метаданные, описывающие каждый уникальный класс/экземпляр предмета, на который ссылаются assets. Несколько ассетов обычно используют одно и то же описание. |
Объект asset
| Поле | Тип | Описание |
|---|---|---|
appid | number | Application ID, которому принадлежит ассет. |
contextid | string | Context ID, в котором находится ассет. |
assetid | string | Уникальный ID этого конкретного ассета в инвентаре пользователя. |
classid | string | Class ID, используемый для поиска описания ассета. |
instanceid | string | Instance ID, используемый (вместе с classid) для поиска описания ассета. |
amount | string | Количество данного ассета. Почти всегда "1", кроме стакающихся предметов. |
Объект description
| Поле | Тип | Описание |
|---|---|---|
appid | number | Application ID. |
classid | string | Class ID — совпадает с assets[].classid. |
instanceid | string | Instance ID — совпадает с assets[].instanceid. |
currency | number | 1, если предмет является внутриигровой валютой, иначе 0. |
background_color | string | Hex-цвет, используемый за иконкой предмета в интерфейсе Steam. |
icon_url | string | Относительный путь к иконке предмета на CDN Steam. |
icon_url_large | string | Относительный путь к большой иконке предмета на CDN Steam (присутствует не всегда). |
descriptions | array | Строки форматированного описания (описание оружия, содержимое кейсов, атрибуты и т.д.). |
tradable | number | 1, если предмет можно обменять, иначе 0. |
marketable | number | 1, если предмет можно продать на Steam Community Market, иначе 0. |
commodity | number | 1, если предмет является товаром (взаимозаменяем), иначе 0. |
market_tradable_restriction | number | Дней, оставшихся до того, как предмет станет доступен для обмена. |
market_marketable_restriction | number | Дней, оставшихся до того, как предмет станет доступен для продажи. |
name | string | Отображаемое название предмета. |
name_color | string | Hex-цвет, используемый для названия предмета в интерфейсе Steam (отражает редкость). |
type | string | Классификация типа предмета (например, "Base Grade Container", "Mil-Spec Grade SMG"). |
market_name | string | Отображаемое название на торговой площадке. |
market_hash_name | string | URL-безопасное название для площадки, используется для запросов к market-эндпоинтам. |
actions | array | Внутриигровые действия, такие как ссылки на inspect. Присутствует не всегда. |
market_actions | array | Действия, связанные с площадкой, такие как ссылки на inspect со страницы маркета. Присутствует не всегда. |
tags | array | Классификационные теги (тип, оружие, редкость, износ, коллекция и т.д.). |
sealed | number | 1, если контейнер запечатан, иначе 0. |
sealed_type | number | Внутренний тип запечатанного контейнера. |
market_bucket_group_name | string | Название группы market bucket (используется Steam для группировки вариантов). |
market_bucket_group_id | string | ID группы market bucket. |
URL-ы иконок являются относительными. Чтобы отобразить их, добавь префикс базового CDN Steam:
https://community.cloudflare.steamstatic.com/economy/image/{icon_url}
Пример ответа
Для краткости массивы assets и descriptions усечены — реальный ответ содержит по одному ассету на каждый предмет в инвентаре и по одному описанию на каждую уникальную пару classid + instanceid.
response.json
{
"success": true,
"result": {
"assets": [
{
"appid": 730,
"contextid": "2",
"assetid": "50813022021",
"classid": "5710094579",
"instanceid": "8336926543",
"amount": "1"
}
],
"descriptions": [
{
"appid": 730,
"classid": "5710094579",
"instanceid": "8336926543",
"currency": 0,
"background_color": "393b3e",
"icon_url": "i0CoZ81Ui0m-9KwlBY1L_18myuGuq1wfhWSaZgMttyVfPaERSR0Wqmu7LAocGJKz2lu_XsnXwtmkJjSU91dh8bj35VTqVBP4io_frnEVvqf_a6VoIfGSXz7Hlbwg57QwSS_mxhl15jiGyN37c3_GZw91W8BwRflK7EfKsa2sfw",
"tradable": 1,
"name": "Kilowatt Case",
"name_color": "b0c3d9",
"type": "Base Grade Container",
"market_name": "Kilowatt Case",
"market_hash_name": "Kilowatt Case",
"commodity": 1,
"market_tradable_restriction": 7,
"market_marketable_restriction": 7,
"marketable": 1,
"tags": [
{ "category": "Type", "internal_name": "CSGO_Type_WeaponCase", "localized_category_name": "Type", "localized_tag_name": "Container" },
{ "category": "Rarity", "internal_name": "Rarity_Common", "localized_category_name": "Quality", "localized_tag_name": "Base Grade", "color": "b0c3d9" }
],
"sealed": 0,
"sealed_type": 0,
"market_bucket_group_name": "Kilowatt Case",
"market_bucket_group_id": "G18A8263004"
}
]
}
}