Documentação do Steamworks
GetContextContents/v0001
Retorna todos os ativos e moedas em um contexto específico para um usuário.

Chamado por: Interface de usuário de troca, interface de usuário de inventário

Método HTTP: GET

Parâmetros:

NomeTipoObrigatórioDescrição
keystringEsta é a "Chave do servidor de ativos" fornecida nas "Configurações da economia Steam" do aplicativo do site do parceiro.
appiduint32O AppID de 32 bits do aplicativo associado aos ativos.
steamiduint64O ID Steam de 64 bits do usuário cujos ativos retornar.
contextiduint64O ID de 64 bits do contexto cujos ativos retornar.

Retorna

A saída deste método deve ser codificada no formato JSON.

Resposta:
  • result
    • success — True se bem-sucedida. Se o servidor de ativos está retornando false, o parâmetro error deve conter uma string com o motivo.
    • error — Uma string que descreve o motivo da falha da chamada. A mensagem será armazenada no relatório de erro, disponível na aba Economia do painel de administração de aplicativo no site do Steamworks.
    • assets — Um vetor de ativos pertencentes ao contexto especificado.
      • id — O ID de 64 bits do ativo.
      • class — Um vetor de identificadores de classe de ativos definidos pelo jogo. Cabe ao jogo definir que identificadores são. Precisam informar dados suficientes para reproduzir os dados do ativo (i.é., descrever o tipo do item que é) quando os identificadores de classe são passados ao método GetAssetClassInfo/v0001. Cada identificador deve conter os campos a seguir:
        • name — O nome desta parte do identificador de classe.
        • value — Uma string que representa o valor desta parte do identificador de classe.
        • instance — Se true, o identificador de classe é considerado "dados de instância", o que significa que não costuma ser transferido com o item em uma troca, logo não afeta o valor de troca de um item.
          (Padrão: false)
          AVISO: Uma propriedade de classe de bem que tenha efeito no market_hash_name de um item na resposta ao método GetAssetClassInfo/v0001 nunca deve ser considerada dados de instância. O Mercado da Comunidade depende de propriedades de instância que não afetem o market_hash_name.
        Para maximizar a quantidade de dados de descrição que podem ser armazenados em cache pelo Steam, os identificadores de classe devem ser o mais genéricos e recicláveis possível. Por exemplo, evite usar uma classe com uma propriedade de nome "itemid" e um valor que é o ID de 64 bits do ativo. No lugar, descreva o tipo do item de forma que tenha dados o suficiente para criar a descrição. Por exemplo, uma classe de ativos com parâmetros "type" = "sword" e "rarity" = "common" contém dados o suficiente para construir a descrição do item sem precisar saber exatamente a instância referenciada.
      • amount (opcional) — A quantidade agrupada do ativo. O usuário poderá trocar até essa quantidade de unidades do agrupamento. (Padrão: 1)
    • currency (opcional) — Um vetor dos tipos de moedas contidos nesse contexto. Se o usuário não possuir nenhum tipo de moeda, inclua-a apenas se fosse visível na interface de usuário do jogo. A exibição de uma moeda é similar à de um ativo, então os campos listados acima para bens também se aplicam a moedas, com a exceção dos campos class e id. Além dos outros campos para ativos, os dois campos a seguir são usados para moedas:
      • id — O ID de 32 bits sem sinal associado ao tipo da moeda. O ID deve ser globalmente único no jogo.
      • amount — Número inteiro de 64 bits que representa a quantidade da moeda em posse do usuário.

Exemplo de saída

{ "result": { "assets": [ { "id": 131363189, "class": [ { "name": "def_index", "value": "128" }, { "name": "quality", "value": "3" } ] }, { "id": 131412933, "class": [ { "name": "def_index", "value": "155" }, { "name": "quality", "value": "3" } ] }, { "id": 556669733, "class": [ { "name": "def_index", "value": "583" }, { "name": "flags", "value": "1" }, { "name": "origin", "value": "1", "instance": true } ] }, ] , "success": true } }