Documentación de Steamworks
Interfaz IInventoryService
Esta es la interfaz usada para acceder al Servicio de inventario de Steam.

NOTA: Esta es una interfaz de servicio, los métodos en esta interfaz deben llamarse con el parámetro: input_json.

Para obtener más información sobre cómo utilizar la Web de API de Steamworks, consulta el Descripción general de la Web de API.

AddItem

POST https://partner.steam-api.com/IInventoryService/AddItem/v1/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32Id. de la aplicación asociada con el artículo.
itemdefiduint64Lista de los itemdefid a conceder. Debería especificarse con una serie de parámetros llamados "itemdefid[0]", "itemdefid[1]", etc.
itempropsjsonstring
steamiduint64Id. de Steam del jugador que recibe los artículos.
notifyboolOpcional, por defecto 0. Establecer en 1 para indicar que el usuario no está en el juego y debería ver una notificación de Steam.
requestiduint64Opcional, por defecto 0. Los clientes pueden facilitar un identificador único para que una solicitud lleve a cabo como mucho una ejecución. Cuando se reenvía un id. de solicitud, no provocará que se vuelva a ejecuutar; el mensaje de respuesta será el estado actual de los artículos afectados por la ejecución completada original.
trade_restrictionboolOpcional, por defecto 0. Establecer en 1 para que Steam aplique los tiempos de reutilización del mercado y el comercio como si fuera un artículo comprado.

AddItem se usa para agregar nuevos artículos directamente al inventario de un usuario. Por cada ItemDef, se crea una instancia de ese tipo y se agrega a la cuenta objetivo.

Los artículos de tipo "bundle" (lote) y "generator" (generador) se abren en el momento en que se agregan. El mensaje de respuesta ofrece información acerca del artículo o artículos que se han insertado en el inventario.

Esta llamada fallará si el ItemDef no está definido o no puede abrirse, o si el jugador objetivo no tiene permisos para el id. de aplicación dado.

La notificación al jugador del artículo nuevo, si lo hubiera, se gestiona mejor desde el cliente de juego. Las llamadas a AddItem que ocurren cuando el jugador no está en el juego pueden configurar opcionalmente notify=1 para notificar al jugador a través de Steam. Esto puede implicar cualquiera de los mecanismos de notificación de jugador de Steam, incluida una notificación emergente en la interfaz.

El parámetro opcional requestid permite a un cliente realizar una llamada idempotent. Si el cliente no está seguro de si una solicitud se completó correctamente en el servidor, puede volver a reproducir la solicitud, reutilizando la id. de la solicitud original.
Si se repite la solicitud, la respuesta incluirá el estado actual de los elementos que se vieron afectados por la solicitud original, sin realizar nuevos cambios.

Si la solicitud original da error en el servidor, repetir el mismo id. de solicitud reintentará el trabajo en vez de informar del resultado erróneo anterior.

Si el usuario obtuvo tu aplicación con una licencia gratuita y no ha jugado durante los últimos 30 días, AddItem también fallará.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Por lo tanto, las llamadas a esta API deben realizarse desde un servidor seguro, y los equipos cliente no pueden utilizarla directamente.

Respuesta:
  • response:
    • success: devuelve "true" si el método se ejecutó correctamente. Si el servidor de recursos devuelve "false", debería establecer error en una cadena que explique por qué.
    • error: una cadena que describe por qué falló esta llamada. Este mensaje se incluirá en el registro de errores, que está disponible en la pestaña "Economía" del sitio de Steamworks.
    • item_json: una matriz de los detalles de los artículos recién creados. Se devuelve como un JSON codificado que contiene las propiedades reales del artículo.
    • replayed: si es "true", indica que el id. de solicitud dado se procesó anteriormente y la respuesta se basa en la ejecución original. No se incluirá si no se especifica el id. de solicitud.

Ejemplo de respuesta:
{ "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\"}]" } }

Ejemplo de llamada:
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/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32
itemdefiduint64
steamiduint64
notifyboolSi se notifica al usuario que el artículo se ha agregado a su inventario de Steam.
requestiduint64Los clientes pueden proporcionar un identificador único para que una solicitud se ejecute como máximo una vez. Cuando se reenvíe un id. de solicitud, eso no hará que el trabajo se ejecute de nuevo; el mensaje de respuesta será el estado actual de los artículos afectados por la ejecución original.

Agrega un artículo promocional al inventario de un usuario. Si se llama sin el parámetro itemdefid, busca y otorga los artículos promocionales disponibles para el jugador en cuestión.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Como tal, esta API DEBE ser llamada desde un servidor seguro y ¡nunca puede ser utilizada directamente por tus clientes!

ConsumeItem

POST https://partner.steam-api.com/IInventoryService/ConsumeItem/v1/

NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32
itemiduint64Id. del artículo para ser consumido.
quantitystringPorción del artículo introducido que se va a consumir.
steamiduint64
requestiduint64Los clientes pueden facilitar un identificador único para que una solicitud lleve a cabo como mucho una ejecución. Cuando se reenvía un id. de solicitud, no provocará que se vuelva a ejecuutar; el mensaje de respuesta será el estado actual de los artículos afectados por la ejecución completada original.

Marca un artículo como consumido, total o parcialmente. Esta acción es irreversible.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Por lo tanto, las llamadas a esta API deben realizarse desde un servidor seguro, y los equipos cliente no pueden utilizarla directamente.

También está disponible una versión de SDK del cliente para esta llamada: ISteamInventory::ConsumeItem

ExchangeItem

POST https://partner.steam-api.com/IInventoryService/ExchangeItem/v1/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32Id. de la aplicación asociada con el artículo.
steamiduint64Id. de Steam del jugador que posee los objetos.
materialsitemiduint64Id. único de un artículo en el inventario del jugador que se va a convertir en el tipo de artículo objetivo. Esta debería ser la longitud de las matrices materialsitemid[0], materialsitemid[1], etc.
materialsquantityuint32La cantidad del artículo correspondiente que debería usarse en esta receta. Esta matriz debe tener la misma longitud que materialsitemid.
outputitemdefiduint64El ItemDef del elemento a crear.

ExchangeItem se usa para la fabricación: convertir artículos usando una receta predefinida. Un intercambio llevado a cabo correctamente destruye el conjunto de artículos necesarios para la receta de fabricación y agrega una nueva instancia del ItemDef objetivo al inventario del jugador.

La definición del artículo objetivo debe tener una o más recetas de elaboración declaradas en el atributo exchange. Las recetas establecen el número y el tipo de artículos necesarios para crear el artículo objetivo. Si el conjunto de artículos proporcionado en la llamada ExchangeItems no satisface ninguna receta, la llamada da error y no se producen cambios en el inventario.

Consulta la documentación del esquema del servicio de inventario para obtener más detalles sobre cómo elaborar recetas.

La operación de artesanía tendrá en cuenta las restricciones de intercambio y de mercado; el artículo creado tendrá la restricción de intercambio más reciente de cualquier artículo utilizado para crearlo.

Si se lleva a cabo correctamente, esta llamada devuelve un blob de JSON codificado que muestra los artículos modificados por esta llamada: los artículos consumidos y el recién creado.
NOTA: Nunca distribuyas tu clave de la API de Steam con tu juego. Esta API debe llamarse desde un servidor seguro y los clientes no pueden usarla directamente.

También está disponible una versión de SDK del cliente para esta llamada: ISteamInventory::ExchangeItems


Respuesta:
  • response:
    • item_json: detalles de todos los elementos afectados por el intercambio. Se devuelve en forma de cadena que contiene el JSON codificado de las propiedades reales del artículo. Devuelve una matriz vacía en caso de intercambios fallidos.

Ejemplo de respuesta:
{ "response": { "item_json": "[{ \"accountid\":\"292733980074050545\",\"itemid\":\"1503713096879725\",\"itemdefid\":\"4111\",\"state\":\"removed\" ... } }

Ejemplo de llamada:
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/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32Id. de la aplicación asociada con el artículo.
steamiduint64Id. de Steam de 64 bits del usuario cuyo inventario estás solicitando.

GetInventory se usa para recuperar el inventario de un usuario.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Como tal, esta API DEBE ser llamada desde un servidor seguro y ¡nunca debe ser usada directamente desde un equipo cliente!

Respuesta:
  • response
    • success: "True" si el método se ejecutó correctamente. Si el servidor de recursos devuelve "false", debería establecer error en una cadena que explique por qué.
    • error: Una cadena que describe por qué esta llamada falló. Este mensaje se incluirá en el registro de errores, que está disponible en la pestaña "Economía" del sitio de Steamworks.
    • item_json: una matriz de los detalles del artículo del inventario. Cada uno es una cadena que contiene el código JSON de las propiedades reales del artículo.

Para obtener una descripción detallada de los valores de salida, consulta la documentación de esquema principal.

Ejemplo de respuesta:
{ "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\"} ]" }}

Ejemplo de llamada:
$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/
NameTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32Id. de la aplicación asociada con el artículo.
modifiedsincestringSe usa para recuperar solo actualizaciones a los itemdef a partir de un momento determinado. El formato es: aaaammddThhmmssZ (E.g. 20140808T010203Z).
itemdefidsuint64Se usa para recuperar solo ItemDef por ItemDefId.
workshopidsuint64Se usa para obtener solamente itemdef específicos mediante workshopid.
cache_max_age_secondsuint32Permite devolver datos obsoletos para el número de segundos especificado.

GetItemDefs se emplea para recuperar los itemdef para una aplicación en específico.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Como tal, esta API DEBE ser llamada desde un servidor seguro y ¡nunca debe ser usada directamente desde un equipo cliente!

Respuesta:
  • response:
    • success: true si el método fue exitoso. Si el servidor de recursos devuelve el valor false, debería establecer error en una cadena que explique por qué.
    • error: una cadena que describe por qué falló esta llamada. Este mensaje se incluirá en el registro de errores, que está disponible en la pestaña "Economía" del sitio de Steamworks.
    • item_json: una matriz de los detalles de los artículos recién creados. Cada uno es una cadena que contiene el código JSON de las propiedades reales del artículo.

Ejemplo de respuesta:
{ "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\"} ]" } }

Ejemplo de llamada:
$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/
NombreTipoObligatorioDescripción
keystringClave de autenticación de usuario de la Web de API de Steamworks.
ecurrencyint32

Obtiene la hoja de precios del servicio de inventario.

Consolidate

POST https://partner.steam-api.com/IInventoryService/Consolidate/v1/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32
steamiduint64
itemdefiduint64 array
forcebool

Consolida artículos del tipo dado dentro del inventario de un usuario.

Cuando los artículos se combinan en una única pila, esta adopta los valores de mercado y de restricción de intercambio del artículo más restrictivo. La acción Consolidate ignora los artículos con restricciones de intercambio o mercado activas, a menos que force esté configurado como true.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Por tanto, esta API DEBE llamarse desde un servidor seguro, ¡y los clientes jamás pueden usarla directamente!

GetQuantity

GET https://partner.steam-api.com/IInventoryService/GetQuantity/v1/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32
steamiduint64
itemdefiduint64[]Lista de los itemdefid a consultar. Debería especificarse con una serie de parámetros llamados 'itemdefid[0]', 'itemdefid[1]', etc.
forcebool

Obtiene el número total de artículos disponibles del tipo dado.

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Por tanto, esta API DEBE llamarse desde un servidor seguro, ¡y los clientes jamás pueden usarla directamente!

ModifyItems

POST https://partner.steam-api.com/IInventoryService/ModifyItems/v1/
NombreTipoObligatorioDescripción
keystringClave de autenticación de editor de la Web de API de Steamworks.
appiduint32
input_jsonstring
steamiduint64Id. de Steam del usuario que posee los artículos. Debe especificarse en el parámetro input_json.
timestampuint32Marca de tiempo de Unix de la solicitud. Se devolverá un error si los artículos se han modificado desde este tiempo de solicitud. Debe especificarse en el parámetro input_json.
updatesmensajeLa lista de elementos y propiedades que se modifican. Debe especificarse en el parámetro input_json.

Estructura de la propiedad updates:
NombreTipoObligatorioDescripción
itemiduint64Id. del artículo que se está modificando.
property_namestringEl nombre de la propiedad dinámica que se agrega/actualiza/elimina.
property_value_stringstringEl valor de la cadena de la propiedad para establecer.
property_value_boolboolEl valor booleano de la propiedad para establecer.
property_value_intint64El valor entero de 64 bits de la propiedad a establecer.
property_value_floatstringEl valor flotante de 32 bits de la propiedad a establecer.
remove_propertyboolSe establece como true si la propiedad debe eliminarse.

Modifica las propiedades dinámicas de los artículos del usuario correspondiente. Esta llamada tiene una tasa limitada por usuario y actualmente solo se pueden modificar 100 artículos en una llamada.

Ejemplo de 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 } ] }

Ejemplo de llamada:
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'

NOTA: Esta llamada requiere una clave de API de editor para utilizar este método. Como tal, esta API DEBE ser llamada desde un servidor seguro y ¡nunca debe ser usada directamente desde un equipo cliente!