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:
Nome | Tipo | Obrigatório | Descrição |
key | string | ✔ | Esta é a "Chave do servidor de ativos" fornecida nas "Configurações da economia Steam" do aplicativo do site do parceiro. |
appid | uint32 | ✔ | O AppID de 32 bits do aplicativo associado aos ativos. |
steamid | uint64 | ✔ | O ID Steam de 64 bits do usuário cujos ativos retornar. |
contextid | uint64 | ✔ | O 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
}
}