Saltar para o conteúdo

Visão geral

  • Versão: 2.0.0
  • Servidores: https://store.xsolla.com/api
  • Contate-nos por e-mail
  • URL de contato: https://xsolla.com/
  • Versão TLS necessária: 1.2

A Catalog API permite que você configure um catálogo de itens de jogo no lado da Xsolla e exibir o catálogo aos usuários na sua loja.

A API permite que você gerencie as seguintes entidades de catálogo:

  • Itens virtuais — itens de jogo tais como armas, visuais e reforços.
  • Moedas virtuais — dinheiro virtual utilizado para comprar bens virtuais.
  • Pacotes de moedas virtuais — conjuntos pré-definidos de moedas virtuais.
  • Conjuntos — pacotes combinados de itens virtuais, moedas ou chaves de jogo vendidas como um único SKU.
  • Chaves de jogo — chaves para jogos e DLCs distribuídos via plataformas como o Steam ou outros provedores de DRM.
  • Grupos — agrupamentos lógicos para organizar e filtrar itens dentro do catálogo.

Chamadas de API

A API divide-se nos seguintes grupos:

  • Admin — chamadas para criar, atualizar, excluir e configurar itens de catálogo e grupos. Autenticada via autenticação de acesso básica com seu comerciante ou credenciais do projeto. Não se destina a uso em vitrines.
  • Catalog — chamadas para recuperar itens e construir vitrines personalizadas para usuários finais. Desenvolvida para gerenciar cenários de carga alta. Suporta a autorização opcional de JWT de usuários para retornar dados personalizados, tais como limites específicos aos usuários e promoções ativas.
Transferir a descrição da OpenAPI
Idiomas
Servidores
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/pt/api/catalog/
Operações
Operações

Obter lista de itens por grupo especificadoClient-side

Pedido

Obtém uma lista de itens do grupo especificado para criar um catálogo.

Atenção

Todos os projetos têm a limitação do número de itens que você pode obter na resposta. O valor padrão e máximo é de 50 itens por resposta. Para obter mais dados página por página, use os campos limit e offset.

Observação

Esse ponto de extremidade, acessível sem autorização, retorna dados genéricos. No entanto, a autorização enriquece a resposta com detalhes específicos do usuário para um resultado personalizado, como limites de usuário disponíveis e promoções.
Segurança
XsollaLoginUserJWT
Caminho
project_idintegerobrigatório

ID do projeto. Você pode encontrar esse parâmetro em sua Conta de Distribuidor ao lado do nome do projeto.

Exemplo: 44056
external_idstringobrigatório

ID externo de grupo.

Padrão "all"
Consulta
limitinteger>= 1

Limite da quantidade de elementos na página.

Exemplo: limit=50
offsetinteger>= 0

Número do elemento a partir do qual a lista é gerada (a quantidade começa a partir de 0).

Exemplo: offset=0
localestring

Linguagem de resposta. Código de idioma minúsculo de duas letras de acordo com o padrão ISO 639-1.

Padrão "en"
additional_fields[]Array of strings

A lista de campos adicionais. Esses campos estarão na resposta se você enviá-los em sua solicitação.

Itens Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

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.

Exemplo: country=US
promo_codestring[ 1 .. 128 ] characters

Código exclusivo que diferencia maiúsculas de minúsculas. Contém letras e números.

Exemplo: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

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.

Padrão 0
Exemplo: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/virtual_items/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Respostas

A lista de itens do grupo especificado foi recebida com sucesso.

Corpoapplication/json
has_moreboolean(Pagination_has-more)

Usado como um indicador de que há mais páginas.

Exemplo: true
itemsArray of objects
Exemplo: [{"attributes":[{"external_id":"stack_size","name":"Stack size","values":[{"value":"5"}]}],"can_be_bought":true,"description":"Big Rocket - description","groups":[{"external_id":"weapons","name":"weapons"}],"image_url":"https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png","is_free":false,"limits":{"per_item":null,"per_user":{"available":3,"limit_exceeded_visibility":"show","recurrent_schedule":{"interval_type":"weekly","reset_next_date":1746057600},"total":5}},"name":"Big Rocket","periods":[{"date_from":"2020-08-11T10:00:00+03:00","date_until":"2020-08-11T20:00:00+03:00"}],"price":{"amount":"100.99","amount_without_discount":"100.99","currency":"USD"},"promotions":[{"bonus":[{"image_url":"https://cdn.xsolla.net/img/misc/images/2fc5c491a47413a8e8000447889093c2.png","name":"Xsolla Minigun","quantity":1,"sku":"com.xsolla.minigun_1","type":"virtual_good"}],"date_end":"2026-04-15T16:16:00+03:00","date_start":"2020-04-15T16:16:00+03:00","discount":{"percent":"50.00"},"name":"Bonus promotion"}],"sku":"com.xsolla.big_rocket_1","type":"virtual_good","virtual_item_type":"non_renewing_subscription","virtual_prices":[{"amount":100,"amount_without_discount":100,"description":"description","image_url":"http://image.png","is_default":true,"name":"SHOTGUN FOR TRUE RAIDERS","sku":"com.xsolla.vc_1","type":"virtual_currency"}]},{"attributes":[{"external_id":"stack_size","name":"Stack size","values":[{"value":"5"}]},{"external_id":"rating","name":"Rating","values":[{"value":"3.9"}]},{"external_id":"genre","name":"Genre","values":[{"value":"Strategy"},{"value":"Tactical"},"Turn-based"]}],"can_be_bought":true,"description":"description","groups":[{"external_id":"weapons","name":{"en":"weapons"}}],"image_url":"http://image.png","is_free":false,"limits":null,"name":"SHOTGUN FOR TRUE RAIDERS","periods":[],"price":{"amount":"101.0","amount_without_discount":"101.0","currency":"USD"},"promotions":[],"sku":"com.xsolla.shotgun_raider","type":"virtual_good","virtual_item_type":"non_renewing_subscription","virtual_prices":[{"amount":100,"amount_without_discount":100,"description":"description","image_url":"http://image.png","is_default":true,"name":"SHOTGUN FOR TRUE RAIDERS","sku":"com.xsolla.vc_1","type":"virtual_currency"},{"amount":200,"amount_without_discount":200,"description":"description","image_url":"http://image.png","is_default":false,"name":"SHOTGUN FOR TRUE RAIDERS","sku":"com.xsolla.vc_2","type":"virtual_currency"}]}]
Resposta
application/json
{ "has_more": false, "items": [ {}, {} ] }

Obter item virtual por SKUClient-side

Pedido

Obtém um item virtual por SKU para criar um catálogo.

Observação

Esse ponto de extremidade, acessível sem autorização, retorna dados genéricos. No entanto, a autorização enriquece a resposta com detalhes específicos do usuário para um resultado personalizado, como limites de usuários disponíveis e promoções.
Segurança
XsollaLoginUserJWT
Caminho
project_idintegerobrigatório

ID do projeto. Você pode encontrar esse parâmetro em sua Conta de Distribuidor ao lado do nome do projeto.

Exemplo: 44056
item_skustringobrigatório

SKU do item.

Exemplo: booster_mega_1
Consulta
localestring

Linguagem de resposta. Código de idioma minúsculo de duas letras de acordo com o padrão ISO 639-1.

Padrão "en"
countrystring

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.

Exemplo: country=US
show_inactive_time_limited_itemsinteger

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.

Padrão 0
Exemplo: show_inactive_time_limited_items=1
additional_fields[]Array of strings

A lista de campos adicionais. Esses campos estarão na resposta se você enviá-los em sua solicitação.

Itens Enum"media_list""order""long_description""custom_attributes""item_order_in_group"
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/virtual_items/sku/booster_mega_1?locale=en&country=US&show_inactive_time_limited_items=1&additional_fields%5B%5D=media_list' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Respostas

O item virtual foi recebido com sucesso.

Corpoapplication/json
attributesArray of objects(Virtual-Items-Currency_client-attributes)

Lista de atributos e seus valores correspondentes ao item. Pode ser usado para a filtragem de catálogos.

Padrão []
Exemplo: {"value":{"external_id":"genre","name":"Жанр","values":[{"external_id":"genre_e3364991f92e751689a68b96598a5a5a84010b85","value":"Casual"},{"external_id":"genre_eba07bfd0f982940773cba3744d97264dd58acd7","value":"Strategy"},{"external_id":"genre_b8d0c6d8f0524c2b2d79ebb93aa3cd0e8b5199a8","value":"Mobile"}]}}
can_be_boughtboolean(Can_be_bought)

Se true, o usuário pode comprar um item.

Exemplo: true
custom_attributesobject(json)(item-custom-attributes-response)

Um objeto JSON que contém atributos e valores de item.

descriptionobject

Descrição do item.

Exemplo: "Big Rocket - description"
groupsArray of objects(items_client_groups_response)

Grupo aos quais o item pertence.

Padrão []
Exemplo: [{"external_id":"exclusive","name":"Exclusive"}]
image_urlstring

URL da imagem.

Exemplo: "https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png"
is_freeboolean(value-is_free)

Se true, o item é gratuito.

Padrão false
Exemplo: false
item_idnumber

ID do item.

limitsobject or null(client-item-limit-response)

Limites de itens.

nameobject

Nome do item.

Exemplo: "Big Rocket"
periodsArray of objects(item-periods-response)

Período de venda de itens.

priceobject or null

Preços dos itens.

promotionsArray of objects(Catalog_item_promotions)

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.

skustring

ID de item exclusivo. O SKU só pode conter caracteres alfanuméricos latinos minúsculos e maiúsculos, pontos, traços e sublinhados.

Exemplo: "big_rocket"
typestring

Tipo de item: virtual_good/virtual_currency/bundle.

Exemplo: "virtual_good"
virtual_item_typestring

Tipo de item virtual.

Enum ValorDescrição
consumable

Um item que desaparece do inventário após o uso (por exemplo, munição).

non_consumable

Um item que permanece no inventário por um período ilimitado de tempo.

non_renewing_subscription

Item de tempo limitado que pode representar acesso a serviços ou conteúdos por um período limitado.

Exemplo: "non-consumable"
virtual_pricesArray of objects

Preços virtuais.

vp_rewardsArray of objects(client-item-value-point-reward)

Recompensa do item de ponto de valor.

Resposta
application/json
{ "attributes": [ {} ], "can_be_bought": true, "custom_attributes": { "attr": "value", "purchased": 0 }, "description": { "en": "Honshu Boshin Wakizashi - Modern Tactical Samurai / Ninja Sword - Hand Forged 1060 Carbon Steel - Full Tang, Fully Functional, Battle Ready - Black TPR, Steel Guard and Pommel" }, "groups": [ {} ], "image_url": "https://cdn.xsolla.net/img/misc/images/8ab44fe99038a56de01950ba4a971b77.png", "is_free": false, "item_id": 488833, "limits": { "per_item": null, "per_user": {} }, "name": { "en": "Sword Xsolla Skin" }, "periods": [ {} ], "price": { "amount": "4.99", "amount_without_discount": "4.99", "currency": "USD" }, "promotions": [], "sku": "com.xsolla.swords_1", "type": "virtual_good", "virtual_item_type": "non_consumable", "virtual_prices": [], "vp_rewards": [] }
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações
Operações

Catálogo

Esta API permite obter qualquer tipo de itens vendáveis ou itens específicos.

Operações
Operações
Operações