Интерфейс для доступа к
службе инвентаря Steam.
ВНИМАНИЕ: это служебный интерфейс, поэтому методы в нём должны вызываться с помощью параметра
input_json
.
Дополнительная информация об использовании веб-API Steamworks доступна в разделе
Обзор веб-API.
AddItem
POST https://partner.steam-api.com/IInventoryService/AddItem/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | Номер приложения, к которому относится предмет. |
itemdefid | uint64 | ✔ | Список номеров определений предмета (itemdefid), которые требуется передать игроку. Должен быть определён как ряд параметров с наименованиями 'itemdefid[0]', 'itemdefid[1]' и т.д. |
itempropsjson | string | ✔ | |
steamid | uint64 | ✔ | SteamID игрока, получающего предметы. |
notify | bool | ✔ | Необязательный, по умолчанию 0. Заданное значение 1 будет означать, что пользователь не в игре и должен видеть уведомление Steam. |
requestid | uint64 | ✔ | Необязательный, по умолчанию 0. Клиенты могут предоставить уникальный идентификатор для запроса, исполняемого не более одного раза. Повторная отправка requestid не приведёт к повторному исполнению; ответное сообщение будет содержать текущее состояние предметов, затронутых исходным успешным исполнением. |
trade_restriction | bool | ✔ | Необязательный, по умолчанию 0. При установленном значении 1 Steam применит временные блокировки Торговой площадки и обмена, как если бы это был купленный предмет. |
AddItem используется для добавления новых предметов напрямую в инвентарь пользователя. Для каждого определения предмета (itemdef) создаётся экземпляр соответствующего типа, который добавляется на целевой аккаунт.
Предметы типа 'bundle' или 'generator' распаковываются в момент добавления. Ответное сообщение предоставляет информацию о предмете или предметах, которые были вложены в инвентарь.
Вызов не состоится, если itemdef не определён или не может быть распакован, а также если у конечного пользователя нет разрешения для нужного appid.
Уведомление игрока о новом предмете лучше всего осуществляется игровым клиентом. Вызовы AddItem, происходящие когда пользователь находится вне игры, можно по желанию настроить на
notify=1
, чтобы уведомить игрока через Steam. Это активирует любой из механизмов уведомления игрока в Steam, включая всплывающее окно в оверлее.
Необязательный параметр
requestid
позволяет клиенту делать идемпотентный вызов. Если клиент не уверен в успешном выполнении запроса на сервере, его можно повторить, снова использовав номер исходного запроса.
В случае повторного запроса ответ будет содержать текущее состояние предметов, затронутых исходным запросом, без каких либо изменений.
Если исходный запрос не состоится на сервере, повторное использование номера запроса поможет в попытках добиться нужных результатов вместо сообщения предыдущего ошибочного результата.
If the user owns your app from a free license and has not played in the last 30 days, AddItem will also fail.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
Ответ: -
response
-
success
— true, если метод успешен. Если сервер ресурсов возвращает false, будет также возвращено поле error
с объяснением.
-
error
— объяснение сбоя. Это сообщение будет записано в журнал ошибок, который увидеть во вкладке «Экономика» раздела «Сообщество» настроек приложения.
-
item_json
- массив сведений о недавно созданных предметах. Возвращается зашифрованный формат JSON, содержащий актуальные свойства предмета.
-
replayed
- если true, указывает на то, что requestid был обработан ранее, а ответ основан на исходном исполнении. Если requestid не указан, эта информация не будет включена.
Пример ответа:{
"response": {
"item_json":
"[{ \"accountid\":\"148618792083651397\",\"itemid\":\"17209346500926339\",\"Timestamp\":\"\",\"originalitemid\":\"17209346500926339\",\"itemdefid\":\"120\",\"appid\":480,\"position\":0,\"quantity\":1,\"transid\":\"\",\"state\":\"\",\"origin\":\"external\",\"price\":\"\",\"acquired\":\"20140912T195537Z\"}]"
}
}
Пример вызова:curl -X POST -H "Content-Type: application/x-www-form-urlencoded" \
-d appid=480 \
-d steamid=292733980074050545 \
-d itemdefid[0]=4111 \
-d itemdefid[1]=4112 \
"http://api.steampowered.com/IInventoryService/AddItem/v1?key=xxxxxx"
AddPromoItem
POST https://partner.steam-api.com/IInventoryService/AddPromoItem/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | |
itemdefid | uint64 | | |
steamid | uint64 | ✔ | |
notify | bool | | Should notify the user that the item was added to their Steam Inventory. |
requestid | uint64 | Clients may provide a unique identifier for a request to perform at most once execution. When a requestid is resubmitted, it will not cause the work to be performed again; the response message will be the current state of items affected by the original successful execution. | |
Adds a promo item to a user's inventory. If called without the itemdefid parameter, checks for and grants available promo items for the given player.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
ConsumeItem
POST https://partner.steam-api.com/IInventoryService/ConsumeItem/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | |
itemid | uint64 | ✔ | ID предмета, который будет использоваться |
quantity | string | ✔ | Объём стека предметов, который будет использован |
steamid | uint64 | ✔ | |
requestid | uint64 | ✔ | Clients may provide a unique identifier for a request to perform at most once execution. When a requestid is resubmitted, it will not cause the work to be performed again; the response message will be the current state of items affected by the original successful execution. |
Marks an item as wholly or partially consumed. This action cannot be reversed.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
A client SDK version of this call is also available:
ISteamInventory::ConsumeItemExchangeItem
POST https://partner.steam-api.com/IInventoryService/ExchangeItem/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | Номер приложения, к которому относится предмет. |
steamid | uint64 | ✔ | SteamID игрока, владеющего предметами. |
materialsitemid | uint64 | ✔ | Уникальный ID предмета в инвентаре игрока, который будет изменён на необходимый тип предмета. Необходимо предоставить в виде materialsitemid[0] , materialsitemid[1] и т. д. |
materialsquantity | uint32 | ✔ | Число копий соответствующего предмета, которое необходимо использовать в этом рецепте обмена. Этот массив должен быть той же длины, что и materialsitemid . |
outputitemdefid | uint64 | ✔ | Определение предмета (ItemDef), который будет создан. |
ExchangeItem is used for crafting - converting items using a predefined recipe. A successful exchange destroys the set of items required by the crafting recipe, and adds a new instance of the target itemdef to the player's inventory.
The target item definition must have one or more crafting recipes declared in the
exchange
attribute. Recipes declare the number and type of items required to create the target item. If the set of items provided in the ExchangeItems call does not satisfy any recipe, the call fails and no changes are made to the inventory.
See the Inventory Service
Schema documentation for more detail on crafting recipes.
The crafting operation will take trade and market restrictions into account; the created item will have the latest trade restriction of any item used to create it.
If successful, this call returns an encoded JSON blob that lists the items that were changed by this call - the consumed items and the newly created one.
Обратите внимание: не распространяйте свой ключ API вместе с игрой! Этот API необходимо вызывать с защищённого сервера и не допускать его использование клиентами.
A client SDK version of this call is also available:
ISteamInventory::ExchangeItemsОтвет: -
response
-
item_json
- информация обо всех предметах, затронутых обменом. Возвращается в виде строки с актуальными свойствами предмета в зашифрованном формате JSON. При несостоявшемся обмене возвращает пустой массив.
Пример ответа:{
"response": {
"item_json":
"[{ \"accountid\":\"292733980074050545\",\"itemid\":\"1503713096879725\",\"itemdefid\":\"4111\",\"state\":\"removed\" ...
}
}
Пример вызова:curl --request POST \
--header 'content-type: multipart/form-data' \
--form appid=30400 \
--form 'materialsitemid[0]=1510699974025744' \
--form 'materialsitemid[1]=1510699974025745' \
--form 'materialsitemid[2]=1510699974025746' \
--form 'materialsquantity[0]=1' \
--form 'materialsquantity[1]=1' \
--form 'materialsquantity[2]=5' \
--form steamid=292733980074050545 \
--form outputitemdefid=4111 \
https://api.steampowered.com/IInventoryService/ExchangeItem/v1?key=xxxxxxxxxx'
GetInventory
GET https://partner.steam-api.com/IInventoryService/GetInventory/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | Номер приложения, к которому относится предмет. |
steamid | uint64 | ✔ | 64-bit Steam ID of the user whose inventory you are requesting. |
GetInventory is used to retrieve a user's inventory.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
Ответ: -
response
-
success
— true, если метод успешен. Если сервер ресурсов возвращает false, будет также возвращено поле error
с объяснением.
-
error
— объяснение сбоя. Это сообщение будет записано в журнал ошибок, который увидеть во вкладке «Экономика» раздела «Сообщество» настроек приложения.
-
item_json
- массив сведений о предметах в инвентаре. Представлен в виде строк с актуальными свойствами предмета в зашифрованном формате JSON.
For detailed description on the output values, refer to the
Core Schema documentation.
Пример ответа:{
"response": {
"item_json":
"[{ \"accountid\":\"xxxxx\",\"itemid\":\"17212166272724458\",\"Timestamp\":\"2014-10-13T22:41:00.4928464Z\",\"originalitemid\":\"17212166272724458\",\"itemdefid\":\"120\",\"appid\":480,\"position\":0,\"quantity\":1,\"transid\":\"\",\"state\":\"\",\"origin\":\"external\",\"price\":\"\",\"acquired\":\"20141013T224100Z\"},
{ \"accountid\":\"xxxxx\",\"itemid\":\"17212166272732706\",\"Timestamp\":\"2014-10-13T22:42:50.1328464Z\",\"originalitemid\":\"17212166272732706\",\"itemdefid\":\"121\",\"appid\":480,\"position\":0,\"quantity\":1,\"transid\":\"\",\"state\":\"\",\"origin\":\"external\",\"price\":\"\",\"acquired\":\"20141013T224250Z\"}
]"
}}
Пример вызова:$fields = array(
'appid' > '480',
'itemlist[0]' > '120',
'itemorigin' > '',
'steamid' > 'xxxxx',
'key' > 'xxxx'
);
var_dump($fields);
$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, $host.'/IInventoryService/GetInventory/v1?appid=480&steamid=xxxxx&key=yyyyyy' );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
$data = curl_exec( $ch );
var_dump($data);
GetItemDefs
GET https://partner.steam-api.com/IInventoryService/GetItemDefs/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | Номер приложения, к которому относится предмет. |
modifiedsince | string | ✔ | Используется только для получения обновлений itemdefs с указанного срока. Формат: yyyymmddThhmmssZ (например, 20140808T010203Z). |
itemdefids | uint64 | ✔ | Используется для получения только определённых itemdefs с помощью itemdefid |
workshopids | uint64 | ✔ | Используется для получения только определённых itemdefs с помощью workshopid |
cache_max_age_seconds | uint32 | | Позволяет возвращение устаревших данных в течение определенных секунд. |
GetItemDefs is used to retrieve the itemdefs for a given application.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
Ответ: -
response
-
success
— true, если метод успешен. Если сервер ресурсов возвращает false, будет также возвращено поле error
с объяснением.
-
error
— объяснение сбоя. Это сообщение будет записано в журнал ошибок, который увидеть во вкладке «Экономика» раздела «Сообщество» настроек приложения.
-
itemdef_json
- массив сведений о недавно созданном предмете. Представлен в виде строк с актуальными свойствами предмета в зашифрованном формате JSON.
Пример ответа:{ "response":
{ "itemdef_json":"[
{ \"appid\":\"480\",\"itemdefid\":\"10\",\"Timestamp\":\"2014-09-12T01:29:10.4628321Z\",\"modified\":\"20140808T010203Z\",\"type\":\"generator\",\"name\":\"Drop Generator/",/"bundle/":/"100x100;101x50;102x25;103x2;110x20;111x20;120x5;121x3/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Drop Generator\",\"market_hash_name\":\"Drop Generator\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"generator\",\"itemslot\":\"generator\"},
{ \"appid\":\"480\",\"itemdefid\":\"100\",\"Timestamp\":\"2014-09-12T01:28:44.4816369Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Plus ship decoration/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Plus ship decoration\",\"market_hash_name\":\"Plus ship decoration\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"decoration\",\"itemslot\":\"decoration\"},
{ \"appid\":\"480\",\"itemdefid\":\"101\",\"Timestamp\":\"2014-09-12T01:29:25.5198429Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Star ship decoration/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Star ship decoration\",\"market_hash_name\":\"Star ship decoration\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"decoration\",\"itemslot\":\"decoration\"},
{ \"appid\":\"480\",\"itemdefid\":\"102\",\"Timestamp\":\"2014-09-12T01:29:33.6544695Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Stripe ship decoration/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Stripe ship decoration\",\"market_hash_name\":\"Stripe ship decoration\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"decoration\",\"itemslot\":\"decoration\"},
{ \"appid\":\"480\",\"itemdefid\":\"103\",\"Timestamp\":\"2014-09-12T01:29:39.5676519Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Hat ship decoration/",/"bundle/":/"/",/"price/":/"1;USD99/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Hat ship decoration\",\"market_hash_name\":\"Hat ship decoration\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"decoration\",\"itemslot\":\"decoration\"},
{ \"appid\":\"480\",\"itemdefid\":\"110\",\"Timestamp\":\"2014-09-12T01:29:44.0715525Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Doublefire gun/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Doublefire gun\",\"market_hash_name\":\"Doublefire gun\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"weapon\",\"itemslot\":\"weapon\"},
{ \"appid\":\"480\",\"itemdefid\":\"111\",\"Timestamp\":\"2014-09-12T01:29:48.9635307Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Fastfire gun/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Fastfire gun\",\"market_hash_name\":\"Fastfire gun\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"weapon\",\"itemslot\":\"weapon\"},
{ \"appid\":\"480\",\"itemdefid\":\"120\",\"Timestamp\":\"2014-09-12T01:29:52.9633305Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Cloaking field/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Cloaking field\",\"market_hash_name\":\"Cloaking field\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"power\",\"itemslot\":\"power\"},
{ \"appid\":\"480\",\"itemdefid\":\"121\",\"Timestamp\":\"2014-09-12T01:30:00.0237423Z\",\"modified\":\"20140808T010203Z\",\"type\":\"item\",\"name\":\"Shield generator/",/"bundle/":/"/",/"price/":/"/",/"quantity/":0,/"description/":/"/",/"background_color/":/"3C352E/",/"icon_url/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"icon_url_large/":/"http://cdn.beta.steampowered.com/apps/440/icons/c_fireaxe_pyro_xmas_large.fa878752e1aa09a721a03042a234063b6c929278.png/",/"market_name/":/"Shield generator\",\"market_hash_name\":\"Shield generator\",\"name_color\":\"7D6D00\",\"workshopid\":\"0\",\"flags\":1,\"game_type\":\"power\",\"itemslot\":\"power\"}
]" } }
Пример вызова:$ch = curl_init();
curl_setopt( $ch, CURLOPT_URL, 'https://api.steampowered.com/IInventoryService/GetItemDefs/v1?appid=480&modifiedsince=&itemdefids=&workshopids=&steamid=xxxx&key=xxxxx' );
curl_setopt( $ch, CURLOPT_RETURNTRANSFER, 1 );
$data = curl_exec( $ch );
echo $data . '<br>';
$output = json_decode( $data );
$itemdef = json_decode( $output->response->itemdef_json );
var_dump( $itemdef );
GetPriceSheet
GET https://api.steampowered.com/IInventoryService/GetPriceSheet/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации пользователя. |
ecurrency | int32 | ✔ | |
Get the Inventory Service price sheet
Consolidate
POST https://partner.steam-api.com/IInventoryService/Consolidate/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | |
steamid | uint64 | ✔ | |
itemdefid | массив uint64 | ✔ | |
force | bool | | |
Consolidate items of the given type within an user's inventory.
Whenever items are combined into a stack, the resulting stack takes the market and trade restriction values of the most-restricted item. The Consolidate action ignores any item with an active market or trade restriction, unless 'force' is set to true.
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
GetQuantity
GET https://partner.steam-api.com/IInventoryService/GetQuantity/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | |
steamid | uint64 | ✔ | |
itemdefid | uint64[] | ✔ | Список номеров определений предмета (itemdefid), которые необходимо запросить. Должен быть определён как ряд параметров с наименованиями 'itemdefid[0]', 'itemdefid[1]' и т.д. |
force | bool | | |
Get the total number of available items of the given type
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!
ModifyItems
POST https://partner.steam-api.com/IInventoryService/ModifyItems/v1/
Название | Тип | Обязательно? | Описание |
key | string | ✔ | Ключ веб-API Steamworks для аутентификации издателя. |
appid | uint32 | ✔ | |
input_json | string | ✔ | |
steamid | uint64 | ✔ | SteamID пользователя, владеющего предметами. Должен быть указан в параметре input_json . |
timestamp | uint32 | ✔ | Метка запроса в формате UNIX-времени. Будет возвращена ошибка, если предметы были изменены со времени этого запроса. Должен быть указан в параметре input_json . |
updates | message | ✔ | Список изменяемых предметов и свойств. Должен быть указан в параметре input_json . |
Structure of the
updates
property:
Название | Тип | Обязательно? | Описание |
itemid | uint64 | ✔ | Номер изменяемого предмета. |
property_name | string | ✔ | Название добавленного, обновлённого или удалённого динамического свойства. |
property_value_string | string | | Значение строки свойства, которое нужно задать. |
property_value_bool | bool | | Булево значение свойства, которое нужно задать. |
property_value_int | int64 | | Значение 64-битного целого числа свойства, которое нужно задать. |
property_value_float | string | | Значение 32-битного числа с плавающей точкой свойства, которое нужно задать. |
remove_property | bool | | Приравнено к true, если свойство необходимо удалить. |
Modify the
dynamic properties on items for the given user. This call is rate-limited per user and currently only 100 items can be modified in one call.
Пример input_json
:
{
"steamid": "76561197970323416",
"timestamp": 1513274037,
"updates": [
{
"itemid": "1",
"property_name": "fx",
"property_value_string": "blue_flames"
},
{
"itemid": "1",
"property_name": "quality",
"property_value_string": "high"
},
{
"itemid": "1",
"property_name": "color",
"remove_property": true
}
]
}
Пример вызова:curl --request POST \
--header 'content-type: multipart/form-data' \
--form appid=30400 \
--form 'input_json={ "steamid" : "76561197970323416", "timestamp" : 1513274037, "updates" : [] }' \
https://api.steampowered.com/IInventoryService/ModifyItems/v1?key=xxxxxxxxxx'
ВНИМАНИЕ: This call requires a publisher API key to use this method. As such this API
MUST be called from a secure server, and can never be used directly by clients!