Interface utilisée pour accéder au
service d'inventaire Steam.
REMARQUE : il s'agit d'une interface de service. Les méthodes de cette interface doivent être appelées avec le paramètre
input_json
.
Pour plus d'informations sur l'utilisation de l'API Web de Steamworks, consultez la section
Présentation de l'API Web.
AddItem
POST https://partner.steam-api.com/IInventoryService/AddItem/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | l'ID de l'application associé à l'item. |
itemdefid | uint64 | ✔ | Liste des ID de définition d'item à accorder. Ce paramètre doit être spécifié en tant que série de paramètres nommés « itemdefid[0] », « itemdefid[1] », etc. |
itempropsjson | string | ✔ | |
steamid | uint64 | ✔ | SteamID du compte recevant les items. |
notify | bool | ✔ | Optionnel, réglé sur 0 par défaut. Définir sur 1 pour indiquer que la personne ne se trouve pas en jeu et qu'elle devrait recevoir une notification Steam. |
requestid | uint64 | ✔ | Facultatif, réglé sur 0 par défaut. Les clients peuvent fournir un identifiant unique afin de demander à procéder à une exécution au maximum. Lorsqu'un ID de requête sera envoyé à nouveau, l'opération ne se répètera pas. Le message de réponse sera constitué de l'état des items affectés par l'exécution d'origine, si celle-ci s'est effectuée avec succès. |
trade_restriction | bool | ✔ | Facultatif, réglé sur 0 par défaut. Régler sur 1 pour que Steam applique un délai pendant lequel la personne ne pourra ni échanger ni vendre des items, au même titre que si cet item avait été acheté. |
AddItem sert à ajouter de nouveaux items directement dans l'inventaire d'un compte. Pour chaque définition d'item, une instance de ce type est créée et ajoutée au compte désigné.
Les items de type « bundle » ou « generator » sont déballés au moment de leur ajout. Le message de réponse fournit des informations sur l'item ou les items effectivement intégré(s) dans l'inventaire.
Cet appel échouera si la définition d'item n'est pas définie ou qu'elle ne peut être déballée, ou si la personne désignée n'a pas la permission nécessaire pour l'AppID concernée.
Notifier une personne d'un nouvel item, est, si nécessaire, une tâche qu'il est recommandé d'effectuer à partir du client de jeu. Les appels vers AddItem survenant lorsque la personne n'est pas en jeu peuvent parfois déboucher sur
notify=1
pour notifier la personne via Steam. Cette action peut faire appel à n'importe quel mécanisme de notification de Steam, y compris les fenêtres de l'overlay.
Le paramètre optionnel
requestid
permet à un client d'effectuer un appel idempotent. Si le client n'est pas sûr qu'une requête ait été menée à bien sur le serveur, il peut relancer la requête avec l'ID original.
Si la requête est relancée, la réponse comprendra l'état actuel des items affectés par la requête initiale sans apporter d'autres modifications.
Si la requête d'origine échoue sur le serveur, répéter le même ID de requête constituera une nouvelle tentative d'effectuer l'opération plutôt qu'un signalement de l'erreur survenue.
Si la personne possède votre application grâce à une licence gratuite et qu'elle ne l'a pas lancée au cours des 30 derniers jours, AddItem échouera toujours.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
Réponse : -
response
-
success
: vaut true si la méthode a réussi. Si le serveur de ressources renvoie false, il doit affecter à error
une chaine de caractères qui explique pourquoi.
-
error
: chaine de caractères décrivant la raison de l'échec de cet appel. Ce message sera enregistré dans le journal d'erreurs, disponible sous le menu Économie de l'onglet Communauté sur le site de Steamworks.
-
item_json
: tableau détaillant les informations relatives aux nouveaux items créés. Renvoyé sous forme de JSON encodé comprenant les propriétés des items.
-
replayed
: si true, indique que l'ID d'une requête donnée a été traité plus tôt, et que la réponse est basée sur la première exécution. Si l'ID de requête n'a pas été défini, cette information ne sera pas présente.
Exemple de réponse :{
"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\"}]"
}
}
Exemple d'appel :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/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | |
itemdefid | uint64 | | |
steamid | uint64 | ✔ | |
notify | bool | | Censé notifier la personne que l'item a été ajouté à son inventaire Steam. |
requestid | uint64 | Les clients peuvent fournir un identifiant unique afin de demander à procéder à une exécution au maximum. Lorsqu'un ID de requête sera envoyé à nouveau, l'opération ne se répètera pas. Le message de réponse sera constitué de l'état des items affectés par l'exécution d'origine, si celle-ci s'est effectuée avec succès. | |
Ajoute un item promotionnel à l'inventaire d'un compte. Si cette méthode est appelée sans le paramètre de l'ID de la définition de l'item, le système cherchera et accordera les items en promotion au compte donné.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
ConsumeItem
POST https://partner.steam-api.com/IInventoryService/ConsumeItem/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | |
itemid | uint64 | ✔ | ID de l'item à consommer. |
quantity | string | ✔ | Quantité d'items dans une pile donnée à consommer. |
steamid | uint64 | ✔ | |
requestid | uint64 | ✔ | Les clients peuvent fournir un identifiant unique afin de demander à procéder à une exécution au maximum. Lorsqu'un ID de requête sera envoyé à nouveau, l'opération ne se répètera pas. Le message de réponse sera constitué de l'état des items affectés par l'exécution d'origine, si celle-ci s'est effectuée avec succès. |
Marque un item comme étant entièrement ou partiellement utilisé. Cette opération est irréversible.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
Une version SDK du client pour cet appel est également disponible :
ISteamInventory::ConsumeItem.
ExchangeItem
POST https://partner.steam-api.com/IInventoryService/ExchangeItem/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | l'ID de l'application associé à l'item. |
steamid | uint64 | ✔ | SteamID du compte en possession des items. |
materialsitemid | uint64 | ✔ | ID unique d'un item dans l'inventaire du compte dont le type doit devenir celui désigné. Ce paramètre doit être fourni comme materialsitemid[0] , materialsitemid[1] , etc. |
materialsquantity | uint32 | ✔ | Quantité de l'item correspondant à utiliser dans cette recette. Ce tableau doit être de la même longueur que materialsitemid . |
outputitemdefid | uint64 | ✔ | Définition de l'item (ItemDef) à créer. |
ExchangeItem sert à la fabrication ou à la conversion d'items utilisés dans une recette prédéfinie. Un échange réussi détruit les items nécessaires à la réalisation de la recette, et ajoute une nouvelle instance de la définition d'item spécifiée dans l'inventaire du compte.
La définition de l'item ciblé doit avoir une ou plusieurs recettes de fabrication déclarée dans l'attribut d'échange
exchange
. Les recettes déclarent le nombre et le type des items nécessaires à la création de l'item spécifié. Si les items présents dans l'appel ExchangeItems ne correspondent à aucune recette, l'appel échoue et aucune modification de l'inventaire n'a lieu.
Consultez la
documentation sur le schéma du service d'inventaire pour plus d'informations sur les recettes de fabrication.
La fabrication prend en compte les restrictions du marché et des échanges. Les restrictions d'échange les plus récentes parmi les items utilisés pour la fabrication s'appliqueront à l'item créé.
En cas de succès, cet appel renvoie un ensemble de données JSON listant les items ayant été modifiés par l'appel ; cette liste comprend les items utilisés et ceux nouvellement créés.
REMARQUE : ne distribuez jamais vos clés d'API Steam avec votre jeu. Cette API doit obligatoirement être appelée depuis un serveur sécurisé, et jamais directement depuis le client.
Une version SDK du client pour cet appel est également disponible :
ISteamInventory::ExchangeItems.
Réponse : -
response
-
item_json
: informations relatives à tous les items concernés par l'échange. Renvoyé sous forme d'une chaine comprenant du JSON encodé relatif aux propriétés des items. Envoie un tableau vide pour les échanges ayant échoué.
Exemple de réponse :{
"response": {
"item_json":
"[{ \"accountid\":\"292733980074050545\",\"itemid\":\"1503713096879725\",\"itemdefid\":\"4111\",\"state\":\"removed\" ...
}
}
Exemple d'appel :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/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | ID de l'application associée à l'item. |
steamid | uint64 | ✔ | SteamID 64 bits du compte dont vous cherchez à récupérer l'inventaire. |
GetInventory permet de récupérer l'inventaire d'un compte.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
Réponse : -
response
-
success
: vaut true si la méthode a réussi. Si le serveur de ressources renvoie false, il doit affecter à error
une chaine de caractères qui explique pourquoi.
-
error
: chaine de caractères décrivant la raison de l'échec de cet appel. Ce message sera enregistré dans le journal d'erreurs, disponible sous le menu Économie de l'onglet Communauté sur le site de Steamworks.
-
item_json
: tableau d'informations relatives à l'item dans l'inventaire. Présentés sous la forme de chaines comprenant du JSON encodé relatif aux propriétés des items.
Pour une description détaillée des valeurs envoyées, veuillez vous référer à la documentation sur le
schéma principal.
Exemple de réponse :{
"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\"}
]"
}}
Exemple d'appel :$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/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | ID de l'application associée à l'item. |
modifiedsince | string | ✔ | Permet de récupérer les mises à jour des définitions d'items à partir d'un moment spécifié. Format : aaaammjjThhmmssZ (par exemple, 20140808T010203Z). |
itemdefids | uint64 | ✔ | Permet de récupérer des définitions d'items spécifiques via itemdefid. |
workshopids | uint64 | ✔ | Permet de récupérer des définitions d'items spécifiques via workshopid. |
cache_max_age_seconds | uint32 | | Permet de renvoyer des données périmées durant un nombre de secondes spécifié. |
GetItemDefs permet de récupérer les définitions d'items d'une application en particulier.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
Réponse : -
response
-
success
: vaut true si la méthode a réussi. Si le serveur de ressources renvoie false, il doit affecter à error
une chaine de caractères qui explique pourquoi.
-
error
: chaine de caractères décrivant la raison de l'échec de cet appel. Ce message sera enregistré dans le journal d'erreurs, disponible sous le menu Économie de l'onglet Communauté sur le site de Steamworks.
-
itemdef_json
: tableau des informations relatives au nouvel item créé. Présentées sous la forme de chaines comprenant du JSON encodé relatif aux propriétés des items.
Exemple de réponse :{ "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\"}
]" } }
Exemple d'appel :$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/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification du compte pour l'API web de Steamworks. |
ecurrency | int32 | ✔ | |
Permet d'obtenir la fiche de tarification du service d'inventaire.
Consolidate
POST https://partner.steam-api.com/IInventoryService/Consolidate/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | |
steamid | uint64 | ✔ | |
itemdefid | uint64 array | ✔ | |
force | bool | | |
Consolide les items d'un certain type dans l'inventaire d'un compte.
Quand des items sont combinés en une pile, cette pile se voit appliquée les valeurs de restriction d'échange et du marché correspondant à l'item en comprenant le plus. La consolidation ignore les items comprenant une restriction d'échange ou du marché, sauf si « force » est défini sur true.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
GetQuantity
GET https://partner.steam-api.com/IInventoryService/GetQuantity/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | |
steamid | uint64 | ✔ | |
itemdefid | uint64[] | ✔ | Liste des ID de définition d'item à demander. Ce paramètre doit être spécifié en tant que série de paramètres nommés « itemdefid[0] », « itemdefid[1] », etc. |
force | bool | | |
Obtenir le nombre total d'items d'un certain type.
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !
ModifyItems
POST https://partner.steam-api.com/IInventoryService/ModifyItems/v1/
Nom | Type | Requis | Description |
key | string | ✔ | Clé d'authentification de l'équipe d'édition pour l'API Web de Steamworks. |
appid | uint32 | ✔ | |
input_json | string | ✔ | |
steamid | uint64 | ✔ | SteamID du compte en possession des items. Doit être indiqué dans le paramètre input_json . |
timestamp | uint32 | ✔ | Date (en heure depuis l'époque Unix) de la requête. Une erreur sera renvoyée si les items ont été modifiés depuis l'heure à laquelle la requête a été lancée. Doit être indiqué dans le paramètre input_json . |
updates | message | ✔ | Liste des items et propriétés en cours de modification. Doit être indiqué dans le paramètre input_json . |
Structure de la propriété
updates
:
Nom | Type | Requis | Description |
itemid | uint64 | ✔ | ID de l'item en cours de modification. |
property_name | string | ✔ | Nom de la propriété dynamique ajoutée, mise à jour ou supprimée. |
property_value_string | string | | Valeur de la chaine de la propriété à définir. |
property_value_bool | bool | | Valeur booléenne de la propriété à définir. |
property_value_int | int64 | | Valeur de l'entier 64 bits de la propriété à définir. |
property_value_float | string | | Valeur flottante 32 bits de la propriété à définir. |
remove_property | bool | | Définir sur true si la propriété doit être enlevée. |
Modifie les
propriétés dynamiques des items d'un compte donné. Cet appel a une limite de fréquence par compte, et actuellement, chaque appel ne peut modifier que jusqu'à 100 items.
Exemple : 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
}
]
}
Exemple d'appel :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'
REMARQUE : cet appel nécessite une clé d'API d'édition afin de pouvoir utiliser la méthode. Cette API doit donc
OBLIGATOIREMENT être appelée depuis un serveur sécurisé. Elle ne doit jamais être utilisée directement par les clients !