# Obter chave de jogo para catálogo

Obtém uma chave de jogo para o catálogo.


  Nota
    Esta chamada de API retorna dados genéricos do catálogo de itens quando usada sem
    autorização. Use a autorização para recuperar
    dados personalizados
    do usuário, como limites e promoções associadas ao item.
    Para fazer isso, passe o JWT do usuário no cabeçalho Authorization.
    Para mais informações sobre o JWT do usuário, consulte o bloco Segurança
    para esta chamada.

Endpoint: GET /v2/project/{project_id}/items/game/key/sku/{item_sku}
Version: 2.0.0
Security: XsollaLoginUserJWT

## Path parameters:

  - `project_id` (integer, required)
    ID de projeto. Você pode encontrar esse parâmetro na sua Conta de Distribuidor, próximo ao nome do projeto e na barra de endereços do navegador ao trabalhar com um projeto. O URL tem o seguinte formato: https://publisher.xsolla.com//projects/.
    Example: 44056

  - `item_sku` (string, required)
    SKU do item.

## Query parameters:

  - `locale` (string)
    Idioma de resposta. Código de idioma de duas letras minúsculas, de acordo com o padrão ISO 639-1 (por exemplo, en). Códigos de localização de cinco caracteres (por exemplo, en-US) são suportados nos campos de tradução, tais como name e description, mas são normalizados a códigos de duas letras nas respostas. Você pode encontrar a lista completa de idiomas suportados na documentação.

  - `additional_fields[]` (array)
    Campos adicionais para incluir na resposta. Por padrão, esses campos não são retornados. Passe os valores necessários para incluí-los.
    Enum: "media_list", "order", "long_description", "custom_attributes", "item_order_in_group"

  - `country` (string)
    Código de país de duas letras maiúsculas de acordo com o padrão ISO 3166-1 alfa-2. Verifique a documentação para obter informações detalhadas sobre os países suportados pela Xsolla e o processo de determinação do país.
    Example: "US"

  - `promo_code` (string)
    Código exclusivo que diferencia maiúsculas de minúsculas. Contém letras e números.
    Example: "WINTER2021"

  - `show_inactive_time_limited_items` (integer)
    Exibe itens de tempo limitado que não estão disponíveis para o usuário. O prazo de validade desses itens não começou ou já expirou.
    Example: 1

## Response 200 fields (application/json):

  - `sku` (string)
    ID de item exclusivo. O SKU só pode conter caracteres alfanuméricos latinos minúsculos e maiúsculos, pontos, traços e sublinhados.
    Example: "com.xsolla.game_1"

  - `name` (string)
    Nome do item.
    Example: "Game name"

  - `groups` (array)
    Grupo aos quais o item pertence.
    Example: [{"external_id":"all","name":"All games","item_order_in_group":2},{"external_id":"Xsolla","name":"Xsolla games","item_order_in_group":1}]

  - `groups.external_id` (string)
    [ID de grupo de itens externo](/pt/api/catalog/item-groups-admin/admin-create-item-group#item-groups-admin/admin-create-item-group/t=request&path=external_id) especificado durante a criação.
    Example: "exclusive"

  - `groups.name` (string)
    Nome do grupo.
    Example: "Exclusive"

  - `groups.item_order_in_group` (integer)
    A posição do item dentro do grupo que determina sua ordem de exibição.
Retornado somente se solicitado pelo parâmetro de pesquisa additional_fields[]
    Example: 1

  - `attributes` (array)
    Lista de atributos e seus valores correspondentes ao item. Pode ser usado para a filtragem de catálogos.
    Example: [{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]},{"external_id":"genre","name":"Genre","values":[{"external_id":"23fda05111c125608af8f1fa0e99db45a10ea1cc","value":"Horror"}]}]

  - `attributes.external_id` (string)
    ID de atributo exclusivo. O external_id só pode conter caracteres alfanuméricos latinos minúsculos e maiúsculos, traços e sublinhados.

  - `attributes.name` (string)
    Nome do atributo.
    Example: "Genre"

  - `attributes.values` (array)

  - `attributes.values.external_id` (string)
    ID de valor exclusivo para um atributo. O external_id pode conter apenas caracteres alfanuméricos latinos minúsculos, traços e sublinhados.

  - `attributes.values.value` (string)
    Valor do atributo.
    Example: "Strategy"

  - `type` (string)
    Tipo de item: game_key.
    Example: "game_key"

  - `description` (string)
    Descrição do item.
    Example: "Game description"

  - `image_url` (string)
    URL da imagem.
    Example: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"

  - `is_free` (boolean)
    Se o item é gratuito ou não.

  - `price` (object)
    Preços dos itens.
    Example: {"amount":"30.5","amount_without_discount":"30.5","currency":"USD"}

  - `price.amount` (string)
    Preço do item com desconto.
    Example: "30.5"

  - `price.amount_without_discount` (string)
    Preço do item.
    Example: "30.5"

  - `price.currency` (string)
    Moeda do preço do item. Código de três letras de acordo com [a ISO 4217](https://en.wikipedia.org/wiki/ISO_4217).
    Example: "USD"

  - `virtual_prices` (array)
    Preços virtuais.
    Example: []

  - `virtual_prices.amount` (integer)
    Preço do item em moeda virtual.
    Example: 100

  - `virtual_prices.amount_without_discount` (integer)
    Preço do item em moedas virtuais sem desconto. Sempre igual a amount já que descontos não são aplicados a preços em moedas virtuais.
    Example: 200

  - `virtual_prices.sku` (string)
    SKU de moeda virtual.
    Example: "vc_gold"

  - `virtual_prices.is_default` (boolean)
    Se o preço padrão é definido em uma moeda virtual ou não.
    Example: true

  - `virtual_prices.image_url` (string,null)
    URL de imagem da moeda virtual
    Example: "http://image.png"

  - `virtual_prices.name` (string)
    Nome da moeda virtual.
    Example: "Gold"

  - `virtual_prices.type` (string)
    Tipo de item. Para moedas virtuais, é virtual_currency.
    Example: "virtual_currency"

  - `virtual_prices.description` (string,null)
    Descrição da moeda virtual.
    Example: "In-game currency used to purchase weapons and upgrades"

  - `can_be_bought` (boolean)
    Se true, o usuário pode comprar um item.
    Example: true

  - `drm_name` (string)
    Nome do DRM.
    Example: "Steam"

  - `drm_sku` (string)
    ID de DRM exclusivo. O SKU só pode conter caracteres alfanuméricos latinos minúsculos e maiúsculos, pontos, traços e sublinhados.
    Example: "steam_key_1"

  - `has_keys` (boolean)
    Se true, a chave de jogo tem chaves para venda.
    Example: true

  - `is_pre_order` (boolean)
    Se true, a chave do jogo é uma pré-venda e a data de lançamento não foi passada.
    Example: true

  - `release_date` (string)
    Data de lançamento da chave de jogo no formato ISO 8601.
    Example: "2020-08-11T10:00:00+03:00"

  - `promotions` (array)
    Promoções aplicadas a itens específicos no carrinho. A matriz é retornada nos seguintes casos:

* Uma promoção de desconto é configurada para um item específico.

* Um código promocional com a configuração Desconto em itens selecionados é aplicado.

Se nenhuma promoção no nível do item for aplicada, é retornada uma matriz vazia.
    Example: []

  - `promotions.name` (string)

  - `promotions.date_start` (string,null)

  - `promotions.date_end` (string,null)

  - `promotions.discount` (object,null)

  - `promotions.discount.percent` (string,null)

  - `promotions.discount.value` (string,null)

  - `promotions.bonus` (array)

  - `promotions.bonus.sku` (string)

  - `promotions.bonus.quantity` (integer)

  - `promotions.bonus.type` (string)
    Tipo de item bônus.
    Enum: "virtual_good", "virtual_currency", "bundle", "physical_good", "game_key", "nft"

  - `promotions.bonus.name` (string)
    Nome do item bônus. Indisponível para o tipo de item bônus physical_good.

  - `promotions.bonus.image_url` (string)
    URL da imagem do item bônus. Indisponível para o tipo de item bônus physical_good.

  - `promotions.bonus.bundle_type` (string)
    Tipo de item de pacote de bônus. Disponível apenas para o tipo de item bônus bundle.
    Enum: "standard", "virtual_currency_package"

  - `promotions.limits` (object)

  - `promotions.limits.per_user` (object)

  - `promotions.limits.per_user.available` (integer)

  - `promotions.limits.per_user.total` (integer)

  - `limits` (object,null)
    Limites de itens.

  - `limits.per_user` (object,null)
    Limites de item para um usuário.

  - `limits.per_user.total` (integer)
    Quantidade máxima de itens que o usuário atual pode comprar.
    Example: 5

  - `limits.per_user.available` (integer)
    Quantidade restante de itens que o usuário atual pode comprar.
    Example: 3

  - `limits.per_user.recurrent_schedule` (any)

  - `limits.per_user.limit_exceeded_visibility` (string)
    Determina a visibilidade do item no catálogo após o limite de compra ser atingido, até o próximo limite ser redefinido.

Aplica-se a itens para os quais redefinições recorrentes de limite estão configurados na matriz recurrent_schedule.

Se os limites redefinidos não forem configurados, o item não aparecerá no catálogo após o limite de compra ser atingido,
independentemente do valor limit_exceeded_visibility.

Possíveis valores:
- show — O item é retornado nas chamadas API de recuperação de catálogo após o limite de compra ser atingido. Nas chamadas API
de recuperação de catálogo, quando o limite for atingido, o item será retornado com a marcação can_be_bought: false. A próxima
data de redefinição é retornada em  reset_next_date.
- hide — O item não é retornado nas chamadas API de recuperação de catálogo após o limite de compra ser atingido, até
o limite ser redefinido.
    Enum: "show", "hide"

  - `limits.per_item` (object,null)
    Limites de item para um item.

  - `limits.per_item.total` (integer)
    Quantidade máxima de itens que todos os usuários podem comprar.
    Example: 5

  - `limits.per_item.available` (integer)
    Quantidade restante de itens que todos os usuários podem comprar.
    Example: 3

  - `periods` (array,null)
    Período de venda de itens.
    Example: [{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}]

  - `periods.date_from` (string)
    Data em que o item especificado estará disponível para venda.
    Example: "2020-08-11T10:00:00+03:00"

  - `periods.date_until` (string,null)
    Data em que o item especificado ficará indisponível para venda. Pode ser null.
    Example: "2020-08-11T20:00:00+03:00"

  - `loyalty_rewards` (array)
    Pontos de fidelidade que o usuário recebe como recompensa por comprar o item.

  - `loyalty_rewards.name` (string)
    Nome dos pontos de fidelidade.

  - `loyalty_rewards.sku` (string)
    SKU de pontos de fidelidade. Passe esse valor no parâmetro loyalty_point_sku de outras chamadas de API, por exemplo, ao criar um pedido pago com pontos de fidelidade.

  - `loyalty_rewards.description` (string)
    Descrição dos pontos de fidelidade.

  - `loyalty_rewards.image_url` (string,null)
    URL da imagem.

  - `loyalty_rewards.amount` (integer)
    Quantidade de pontos de fidelidade que o usuário recebe por comprar o item.

  - `loyalty_prices` (array)
    Pontos de fidelidade que podem ser usados para comprar o item.

  - `loyalty_prices.name` (string)
    Nome dos pontos de fidelidade.

  - `loyalty_prices.sku` (string)
    SKU de pontos de fidelidade. Passe esse valor no parâmetro loyalty_point_sku de outras chamadas de API, por exemplo, ao criar um pedido pago com pontos de fidelidade.

  - `loyalty_prices.description` (string)
    Descrição dos pontos de fidelidade.

  - `loyalty_prices.image_url` (string,null)
    URL da imagem.

  - `loyalty_prices.amount` (integer)
    Preço do item especificado em pontos de fidelidade.

## Response 404 fields (application/json):

  - `statusCode` (integer)
    Example: 404

  - `errorCode` (integer)
    Example: 4001

  - `errorMessage` (string)
    Example: "[0401-4001]: Item with sku = 'game_key_1' not found"


