Документация Steamworks
Интерфейс IInventoryService
Интерфейс для доступа к службе инвентаря Steam.

ВНИМАНИЕ: это служебный интерфейс, поэтому методы в нём должны вызываться с помощью параметра input_json.

Дополнительная информация об использовании веб-API Steamworks доступна в разделе Обзор веб-API.

AddItem

POST https://partner.steam-api.com/IInventoryService/AddItem/v1/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32Номер приложения, к которому относится предмет.
itemdefiduint64Список номеров определений предмета (itemdefid), которые требуется передать игроку. Должен быть определён как ряд параметров с наименованиями 'itemdefid[0]', 'itemdefid[1]' и т.д.
itempropsjsonstring
steamiduint64SteamID игрока, получающего предметы.
notifyboolНеобязательный, по умолчанию 0. Заданное значение 1 будет означать, что пользователь не в игре и должен видеть уведомление Steam.
requestiduint64Необязательный, по умолчанию 0. Клиенты могут предоставить уникальный идентификатор для запроса, исполняемого не более одного раза. Повторная отправка requestid не приведёт к повторному исполнению; ответное сообщение будет содержать текущее состояние предметов, затронутых исходным успешным исполнением.
trade_restrictionboolНеобязательный, по умолчанию 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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32
itemdefiduint64
steamiduint64
notifyboolShould notify the user that the item was added to their Steam Inventory.
requestiduint64Clients 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/

НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32
itemiduint64ID предмета, который будет использоваться
quantitystringОбъём стека предметов, который будет использован
steamiduint64
requestiduint64Clients 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::ConsumeItem

ExchangeItem

POST https://partner.steam-api.com/IInventoryService/ExchangeItem/v1/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32Номер приложения, к которому относится предмет.
steamiduint64SteamID игрока, владеющего предметами.
materialsitemiduint64Уникальный ID предмета в инвентаре игрока, который будет изменён на необходимый тип предмета. Необходимо предоставить в виде materialsitemid[0], materialsitemid[1] и т. д.
materialsquantityuint32Число копий соответствующего предмета, которое необходимо использовать в этом рецепте обмена. Этот массив должен быть той же длины, что и materialsitemid.
outputitemdefiduint64Определение предмета (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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32Номер приложения, к которому относится предмет.
steamiduint6464-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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32Номер приложения, к которому относится предмет.
modifiedsincestringИспользуется только для получения обновлений itemdefs с указанного срока. Формат: yyyymmddThhmmssZ (например, 20140808T010203Z).
itemdefidsuint64Используется для получения только определённых itemdefs с помощью itemdefid
workshopidsuint64Используется для получения только определённых itemdefs с помощью workshopid
cache_max_age_secondsuint32Позволяет возвращение устаревших данных в течение определенных секунд.

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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации пользователя.
ecurrencyint32

Get the Inventory Service price sheet

Consolidate

POST https://partner.steam-api.com/IInventoryService/Consolidate/v1/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32
steamiduint64
itemdefidмассив uint64
forcebool

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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32
steamiduint64
itemdefiduint64[]Список номеров определений предмета (itemdefid), которые необходимо запросить. Должен быть определён как ряд параметров с наименованиями 'itemdefid[0]', 'itemdefid[1]' и т.д.
forcebool

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/
НазваниеТипОбязательно?Описание
keystringКлюч веб-API Steamworks для аутентификации издателя.
appiduint32
input_jsonstring
steamiduint64SteamID пользователя, владеющего предметами. Должен быть указан в параметре input_json.
timestampuint32Метка запроса в формате UNIX-времени. Будет возвращена ошибка, если предметы были изменены со времени этого запроса. Должен быть указан в параметре input_json.
updatesmessageСписок изменяемых предметов и свойств. Должен быть указан в параметре input_json.

Structure of the updates property:
НазваниеТипОбязательно?Описание
itemiduint64Номер изменяемого предмета.
property_namestringНазвание добавленного, обновлённого или удалённого динамического свойства.
property_value_stringstringЗначение строки свойства, которое нужно задать.
property_value_boolboolБулево значение свойства, которое нужно задать.
property_value_intint64Значение 64-битного целого числа свойства, которое нужно задать.
property_value_floatstringЗначение 32-битного числа с плавающей точкой свойства, которое нужно задать.
remove_propertyboolПриравнено к 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!