Documentação do Steamworks
GetAssetClassInfo/v0001
Retorna os detalhes obrigatórios para exibir uma classe de ativos a um usuário. Esse método será chamado pelo menos uma vez para cada ativo exibido no inventário de um usuário. Os dados são armazenados em cache, então pode haver menos de uma chamada por visualização do ativo. Se por algum motivo precisar invalidar o cache, altere o valor da "Versão de classe de ativos" na aba Economia da página de detalhes técnicos do aplicativo.

Identificadores de classe costumam ser definidos inteiramente pelo jogo no qual o ativo existe. A única exceção é a moeda. O servidor de economia do Steam pode chamar o método GetAssetClassInfo com um único identificador, "currencyid", cujo valor é igual ao ID da moeda que precisa consultar. Nesse caso, o servidor de bens deve retornar detalhes de exibição de moeda no lugar de detalhes de exibição de ativo.

Chamado por: 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.
class_countuint32A quantidade de identificadores de classe especificados.
class_name#stringO nome do identificador. Haverá um desses parâmetros para cada número entre 0 e class_count-1. (ex.: class_name0, class_name1, class_name2)
class_value#stringO valor do identificador. Haverá um desses parâmetros para cada número entre 0 e class_count-1. (ex.: class_value0, class_value1, class_value2)
languagestringCódigo de idioma ISO639-1 seguido de código de país ISO 3166-1 alfa 2 do idioma no qual retornar as strings. Exemplos: en_US, de_DE, pt_BR, zh_CN e ko_KR. Padrão: en_US

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.
    • asset — Um objeto que contém os detalhes de exibição para os identificadores de classe de ativos especificados.

Detalhes de exibição:

  • background_color — Uma string que representa um valor RGB hexadecimal de cor.
  • icon_url — O ícone a ser usado para o ativo, no formato JPEG, GIF ou PNG.
    Prefira PNG ou GIF devido à transparência. Jogos podem informar um único tamanho de ícone pelo campo e o Steam o redimensionará para para corresponder à interface de usuário. O tamanho do ícone deve ser de, no mínimo, 200x200 pixels. O Steam oferecerá distribuição por CDN para todas as imagens quando exibidas a usuários, então a quantidade de acessos a este URL será relativamente baixa.
  • icon_url_large (opcional) — O ícone grande associado às descrições. As regras de formato são as mesmas do parâmetro icon_url.
    O tamanho do ícone grande deve ser de, no mínimo, 330x192 pixels. Se o parâmetro icon_url_large não for informado, o ícone icon_url será usado no lugar.
    O Steam oferecerá distribuição por CDN para todas as imagens quando exibidas a usuário, então a quantidade de acessos a este URL será relativamente baixa.
  • descriptions — Um vetor de descrições a exibir para o ativo. Serão exibidas na ordem do vetor em dicas e descrições detalhadas do item.
    • type (opcional) — O parâmetro type controla a forma de renderização do parâmetro value.
      Valores possíveis:
      • text — "value" será interpretado como um texto bruto, traduzido no idioma especificado. Alguns caracteres (<, > etc.) serão convertidos para entidades HTML para que não sejam interpretados como marcadores. Caracteres de quebra de linha serão convertidos para <br>.
        Esse tipo deve ser usado para dados informados pelo usuário. text é o tipo usado se o parâmetro "type" não for informado.
      • html — "value" será incluso como HTML, com os marcadores intactos.
    • image — O seu valor é é o URL de uma imagem a exibir para a descrição. O Steam colocará a imagem em um CDN, então a quantidade de acessos diretos a este URL será relativamente baixa.
    • value — String traduzida a exibir para a descrição.
    • color (opcional) — Uma cor codificada em hexadecimal RGB para usar na exibição de "value". Use mesma a cor utilizada para exibir os dados na interface de usuário do jogo. Aplicável apenas ao tipo text.
    • label (opcional) — Se este campo estiver presente, o valor da descrição será prefixado por este valor.
  • tags (opcional) — Um vetor de marcadores que se aplicam ao ativo. Usados como opções de filtragem ao usuário em vários lugares da interface de usuário, incluindo o Mercado da Comunidade e o inventário dos usuários.
    • internal_name — Um nome para identificar o marcador internamente. Não é exibido ao usuário. Não use caracteres de espaço, fora do padrão ASCII ou que não representem glifos ("non-printable") no campo internal_name.
    • name — O nome localizado do marcador. Exibido ao usuário.
    • category — A categoria à qual o marcador pertence. Usado apenas para agrupamento interno e não exibido ao usuário. Não use caracteres de espaço, fora do padrão ASCII ou que não representem glifos ("non-printable") no campo category.
    • category_name — Nome localizado da categoria. Exibido ao usuário.
    • color (opcional) — Uma cor codificada em hexadecimal RGB para usar na exibição do nome do marcador.
  • tradable (opcional) — Se true, o item será exibido na interface de usuário de troca. (Padrão: false)
  • marketable (opcional) — Se true, o item poderá ser anunciado no Mercado da Comunidade Steam. (Padrão: false).

    AVISO: Atualmente não há como testar anúncios no Mercado da Comunidade. Anunciar um item no Mercado da Comunidade o divulgará publicamente, mesmo se a economia do jogo estiver marcada como privada.
  • market_name (obrigatório se comercializável no Mercado) — Se o item puder ser anunciado no Mercado, este será o nome usado para agrupar itens e exibi-los no Mercado da Comunidade. Deve ser localizado onde possível.
  • market_hash_name (obrigatório se comercializável no Mercado) — Deve ser o valor de market_name em inglês. Usado para correlacionar as várias versões e exibir histórico de preços e outros dados.
  • market_fee (opcional) — Se o item puder ser anunciado no Mercado, indica a porcentagem do valor da transação (padrão: 10%) que será a tarifa do jogo. Essa tarifa é paga pelo comprador do item no momento da transação e repassada à distribuidora como parte do pagamento mensal. Expressada como um decimal entre 0 e 0.95 (mas é recomendado usar uma tarifa razoável). (Padrão: 0.10)
  • commodity (opcional) — Indica que todos os itens com o mesmo market_hash_name deste item são idênticos, não havendo diferenças para os usuários. Isso altera a interface de usuário do Mercado da Comunidade para esse tipo de item, permitindo que usuários façam encomendas. O usuário não escolhe de quem estão comprando ou qual anúncio será usado na transação, o que torna imperativo que todos os itens com o mesmo market_hash_name sejam idênticos quando commodity for true. (Padrão: false)
  • market_tradable_restriction (opcional) — A quantidade de dias após a compra que o item não poderá ser trocado. Considere aplicar uma restrição de troca em itens comprados para reduzir a possibilidade de fraudes com cartão de crédito. Jogos da Valve usam o valor 7. (Padrão: 0)
    AVISO: Este valor não é autoritativo. O Steam não é responsável por aplicar a restrição para você. O valor desse campo só é usado para informar aos usuários da existência da restrição. Depois que um item for comprado, é responsabilidade do servidor de ativos aplicar a restrição de troca no novo item. O servidor de ativos pode fazê-lo quando o método TradeSetOwned/v0001 for chamado com is_market de valor 1 e audit_action de valor 101.
  • market_marketable_restriction (opcional) — Similar a market_tradable_restriction, mas indica a quantidade de dias após a compra que o item não poderá ser anunciado no Mercado. Jogos da Valve usam o valor 7. (Padrão: 0)
    AVISO: Este valor não é autoritativo. O Steam não é responsável por aplicar a restrição para você. O valor desse campo só é usado para informar aos usuários da existência da restrição. Depois que um item for comprado, é responsabilidade do servidor de ativos aplicar a restrição de Mercado da Comunidade no novo item. O servidor de ativos pode fazê-lo quando o método TradeSetOwned/v0001 for chamado com is_market de valor 1 e audit_action de valor 101.
  • actions — Um vetor de ações (links), comumente usadas para exibir mais dados sobre um ativo. Exibidos como botões abaixo da descrição na página do inventário. Os links serão abertos no navegador padrão do usuário.
    • link — O URL a ser acessado ao clicar no botão. Os tokens %assetid%, %contextid% e %appid% serão substituídos pelo ID do ativo, ID do contexto e ID do aplicativo, respectivamente.
    • name — O rótulo do botão.
  • owner_descriptions — Um vetor de descrições exibidas apenas ao proprietário do ativo. O conteúdo deste vetor é exatamente o mesmo do parâmetro descriptions. A única diferença é a visibilidade.
  • owner_actions — Um vetor de ações exibidas apenas ao proprietário do ativo. O formato é o mesmo do parâmetro actions. Representa ações especiais disponíveis apenas ao proprietário do ativo, como ativá-lo ou modificá-lo.
  • fraudwarnings — Um vetor de strings de avisos antifraude a exibir se o item for adicionado a uma troca.
    Exibidos em vermelho se o item for adicionado em uma troca.
  • name — A primeira linha da exibição do item.
  • name_color — Uma cor codificada em hexadecimal RGB para usar no nome. Deve ser igual à cor relacionada à raridade ou qualidade do ativo no jogo.
  • type — A segunda linha da exibição do item.
  • contained_item (opcional) — Este parâmetro deve conter um bloco "asset" completo para um item contido neste ativo. Jogos Source usam esse parâmetro para presentes embrulhados, mas pode não ser aplicável ao seu jogo.
  • cache_expiration (opcional) — Horário, no fuso UTC, formatado na especificação RFC 3339 que indica quando o cache da resposta no Steam deverá ser invalidada. Usado apenas se qualquer parte da resposta GetAssetClassInfo for alterada no futuro, mesmo se o conjunto de propriedades de classe de ativos não for alterado. Útil, por exemplo, se o item se tornar trocável futuramente. Recomendamos arredondar os horários nas propriedades de classes de ativos (logo neste campo também) para o próximo dia ou hora para que o Steam possa melhor armazenar o cache das descrições de ativos.
  • item_expiration (opcional) — Horário, no fuso UTC, formatado na especificação RFC 3339 que indica o horário a partir do qual o item não poderá mais ser usado. Quaisquer anúncios ativos deste item no Mercado nesse horário serão cancelados automaticamente.

    Exemplo de saída

    { "result": { "asset": { "descriptions": [ { "name": "attribute", "value": "Usuário 50% mais resistente a dano por fogo", "color": "99ccff" }, { "name": "attribute", "value": "Usuário 40% mais resistente a dano explosivo", "color": "99ccff" }, { "name": "attribute", "value": "Disparo-alt: Cause mais dano investindo\nem direção aos inimigos." } ] , "fraudwarnings": [ "Este item foi renomeado.\nNome original: \"Tarja de Investida\"" ] , "tradable": true, "background_color": "3C352E", "icon_url": "http://media.steampowered.com/apps/440/icons/c_targe_large.b7d8c75ecfc9b04cc49d2c61ddc77996d7ec2f3a.png", "name": "''Tarja Maneira''", "type": "Escudo nível 10", "name_color": "7D6D00", "actions": [ { "name": "Página do item na Wiki...", "link": "http://wiki.teamfortress.com/scripts/itemredirect.php?id=131&lang=pt_BR" } ] }, "success": true } }

    economy_asset_tooltip.png

    economy_asset_icon.png