Documentation Steamworks
GetContexts/v0001
Renvoie les contextes qui existent pour le compte utilisateur spécifié.

Appelée par : outil d'assistance, interface d'échange, interface de l'inventaire

Méthode HTTP : GET

Paramètres :

NomTypeRequisDescription
keystringIl s'agit de la « clé du serveur de ressources » que vous avez indiquée dans les paramètres de l'économie Steam de votre application sur le site des partenaires.
appiduint32AppID 32 bits de l'application associée aux contextes.
steamiduint64SteamID 64 bits du compte utilisateur pour lequel les contextes doivent être renvoyés.
parentuint64ID 64 bits du contexte parent pour lequel les contextes fils doivent être renvoyés. Si ce paramètre est égal à zéro, cela renvoie les contextes du niveau racine.
categorystring« history » ou « assets » si l'appel se fait depuis l'outil d'assistance. S'il est fait depuis l'interface d'échange ou celle de l'inventaire, la catégorie sera « trading ». Cela peut être utile si vous avez des contextes qui ne peuvent apparaitre que dans certaines catégories. Il est également probable que certaines commandes de contexte ne soient pertinentes que dans certaines catégories ; vous pouvez donc filtrer les commandes que vous envoyez en fonction de la catégorie. Si vous ne prenez pas en charge les API de l'outil d'assistance, vous pouvez traiter toutes les catégories de la même façon.
commandsboolTrue si les commandes de contexte doivent être incluses dans la sortie.
languagestringCode de langue ISO 639-1 et code de pays ISO 3166-1 alpha-2 désignant la langue dans laquelle les chaines de caractères doivent être renvoyées. Par exemple : en_US, de_DE, zh_CN, ko_KR. Valeur par défaut : en_US.

Éléments renvoyés

Les données de sortie de cette méthode doivent être encodées au format JSON.

Réponse :
  • result
    • 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.
    • contexts : tableau des contextes fils du parent spécifié.
      • contextid : identifiant 64 bits du contexte dans ce jeu pour ce SteamID. Pour plus d'informations, consultez Identifiants de contexte dans l'économie Steam.
      • name : nom du contexte. Il s'affichera pour les personnes du Support. Si user_facing vaut true, il s'affichera également pour les utilisateurs et utilisatrices.
      • nested : si ceci vaut true, un appel ultérieur de GetContexts avec ce contexte en tant que parent retournera une liste de contextes non vide.
      • asset_count : nombre de ressources et de devises que possède le compte utilisateur dans ce contexte. Ce nombre est indiqué à la personne, et tout contexte avec un asset_count égal à zéro sera généralement masqué pour elle.
      • user_facing : si ceci vaut true et que le contexte contient des ressources, il sera affiché dans l'interface d'échange et l'interface de l'inventaire.
      • commands : tableau de commandes à afficher pour ce contexte dans la page d'économie de l'outil d'assistance. Voir ci-dessous pour de plus amples informations sur les commandes.
    • alerts (facultatif) : tableau d'alertes à afficher pour ce jeu dans l'interface d'échange. Ce nœud est ignoré pour les catégories autres que « trading ».
      • text : chaine de caractères traduite à afficher dans l'interface d'échange pour ce jeu.
      • color (facultatif) : code de couleur hexadécimal de la couleur dans laquelle afficher cette alerte.
    • trade_permissions (facultatif) : niveau d'autorisation d'échange de ce compte utilisateur. La valeur doit être l'une des suivantes : NONE, RECEIVEONLY, SENDONLY, SENDONLY_FULLINVENTORY ou FULL.
      Les comptes disposant de NONE ne pourront faire aucun échange incluant une ressource de ce jeu. Ceux qui ont l'autorisation RECEIVEONLY pourront recevoir des ressources pour le jeu, mais ne pourront pas proposer leurs propres ressources dans un échange. Ceux qui ont l'autorisation SENDONLY pourront proposer des ressources leur appartenant dans un échange, mais ne pourront pas recevoir de ressources pour le jeu. Ceux qui ont l'autorisation SENDONLY_FULLINVENTORY ont les mêmes restrictions que SENDONLY, mais la personne sera informée de la restriction pour le motif suivant : son inventaire pour le jeu est plein. Enfin, les comptes avec des autorisations FULL peuvent ajouter tout item échangeable leur appartenant dans un échange, ou recevoir tout item échangeable de leur partenaire d'échange. Ce nœud est ignoré pour les catégories autres que « trading ». Valeur par défaut : FULL.

Commandes

Chaque contexte peut contenir des commandes qui permettent aux personnes du Support de manipuler les ressources du compte utilisateur. Elles apparaissent uniquement sur la page d'économie dans l'outil d'assistance. Elles s'utilisent pour diverses opérations comme ajouter de nouveaux items, recharger le compte ou supprimer des items. Quand une commande sera exécutée, ContextCommand/v0001 sera appelée. Chaque commande est définie comme suit :
  • name : nom de la commande. Il s'affiche dans l'outil d'assistance et sera renvoyé à ContextCommand.
  • description : description de ce que la commande va faire. Elle s'affiche pour la personne du Support dans la boite de dialogue de confirmation.
  • record_note : si ceci vaut true, la personne du Support sera invitée à enregistrer une note dans l'historique d'activité du Support pour le compte.
    Renvoyez false pour les commandes qui ne modifient pas les informations du compte utilisateur, comme une commande pour charger à nouveau les informations du compte depuis la base de données
    (valeur par défaut : true).
  • asset_command (facultatif) : si ceci vaut true, la commande apparaitra sur chaque ressource du contexte plutôt que dans le contexte lui-même.
    Si une personne du Support exécute cette commande pour un contexte, l'argument supplémentaire assetid sera ajouté à l'appel de ContextCommand qui en résultera.

  • options : tableau d'options à afficher dans la boite de dialogue de confirmation.
    • name : nom de l'option.
    • type : type du contrôle à afficher pour l'option. Les types possibles pour le Support sont checkbox, dropdown, numeric et type_picker.
    • default : valeur par défaut pour cette option. C'est un booléen qui sert pour les options des cases à cocher (checkbox) et des menus déroulants (dropdown).
    • supervisor_only : vaut true si l'accès à cette option est limité à un nombre restreint de personnes du Support. Pour toutes les autres personnes du Support, la valeur par défaut sera utilisée.
    • values : tableau des valeurs possibles pour les options dropdown. Ne s'utilise pas pour les autres types d'options.
      • name : nom à afficher à la personne du Support pour cette valeur.
      • value : valeur à retourner dans ContextCommand si celle-ci est sélectionnée dans le menu déroulant.

    • types : tableau de types à afficher dans les options type_picker (sélecteur). Ne s'utilise pas pour les autres types d'options.
      • name : nom du type
      • value : valeur à retourner pour ce type.
      • icon_url : URL de l'icône à afficher à côté de ce type dans le contrôle sélecteur.
      • tags : tableau de tags à afficher sous le nom dans le type sélecteur.

Exemple de sortie

{ "result": { "success": true, "contexts": [ { "id": 2, "name": "Backpack", "nested": false, "commands": [ { "name": "Reload", "description": "Reload the user's information from the database.", "record_note": false }, { "name": "Delete All", "description": "Delete all of the user's items.", "options": [ { "name": "Delete Purchased Items", "type": "checkbox", "default": false } ] }, { "name": "Add Item", "description": "Adds an item for the user. Please don't set Quality, Particle Effect, or Level unless you know what you're doing.", "options": [ { "name": "Quality", "type": "dropdown", "default": "unique", "values": [ { "name": "Any", "value": "Any" }, { "name": "Normal", "value": "normal" }, { "name": "Genuine", "value": "rarity1" }, { "name": "Vintage", "value": "vintage" }, { "name": "Unusual", "value": "rarity4" } ] }, { "name": "Particle Effect", "type": "dropdown", "default": "none", "values": [ { "name": "None", "value": 0 }, { "name": "burningplayer_red", "value": 1 }, { "name": "burningplayer_flyingbits", "value": 2 } ] }, { "name": "Level", "type": "numeric", "default": 0 }, { "name": "Not Tradable", "type": "checkbox", "default": false }, { "name": "Not Usable In Crafting", "type": "checkbox", "default": false }, { "name": "Item Type", "type": "type_picker", "types": [ { "value": "The Kritzkrieg", "icon_url": "http://media.steampowered.com/apps/440/icons/c_overhealer.b5ed539b534216652b45694e19c78d2aaebcfe5e.png", "name": "Kritzkrieg", "tags": [ "Slot: secondary", "Used By: Medic" ] }, { "value": "The Blutsauger", "icon_url": "http://media.steampowered.com/apps/440/icons/c_leechgun.198c5a7943a16f08b5227f2e84d165c153ed0223.png", "name": "Blutsauger", "tags": [ "Slot: primary", "Used By: Medic" ] } ] } ] }, { "name": "Delete Item", "asset_command": true, "description": "Delete an item" } ] , "asset_count": 180, "user_facing": true }, { "id": 3, "name": "Recipes", "nested": false, "asset_count": 0, "user_facing": false } ] , "alerts": [ ] , "trade_permissions": "FULL" } }