Saltar para o conteúdo

Overview

  • Version: 2.0.0
  • Servers: https://store.xsolla.com/api
  • Contact Us by Email
  • Contact URL: https://xsolla.com/
  • Required TLS version: 1.2

Shop Builder API provides a third-party solution for implementing the server side for your store interface. Use the endpoints to manage in-game items, in-game currencies, cart, player inventory, promotions, game library, etc.

Transferir a descrição da OpenAPI
Idiomas
Servidores
Mock server
https://xsolla.redocly.app/_mock/pt/api/shop-builder/
https://store.xsolla.com/api/
Operações

Catálogo personalizado

Essa API permite especificar regras para atributos de usuário. Se o usuário atender a todas as condições para uma regra concreta, serão exibidos itens personalizados.

Para promoções personalizadas, consulte a seção Promotions.

Para passar atributos antes de uma compra, você pode usar a Xsolla Login API ou passá-los para a propriedade user.attributes ao gerar o token usando a Pay Station API.

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
Operações

Direito à concessão (admin)Server-sideAdmin

Pedido

Concede direito ao usuário.

Atenção

Códigos de jogos ou jogos para plataformas sem DRM podem ser apenas concedidos.
Segurança
basicAuth
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
Corpoapplication/jsonobrigatório
codestring or null

Código de jogo do jogo.

Exemplo: "AAAA-BBBB-CCCC-DDDD"
drmobjectobrigatório

Objeto com propriedades DRM.

Exemplo: {"sku":"com.xsolla.key_1"}
drm.​skustring(Game-Keys_drm_sku)obrigatório

ID de DRM exclusivo.

Enum"steam""playstation""xbox""uplay""origin""drmfree""gog""epicgames""nintendo_eshop""discord_game_store"
Exemplo: "steam"
gameobjectobrigatório

Objeto com propriedades do jogo.

Exemplo: {"sku":"com.xsolla.game_1"}
game.​skustring(Game-Keys_game_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$obrigatório

ID de pacote de chaves exclusivo.

Exemplo: "theGreatestGameSku"
modestringobrigatório

Que tipo de direitos devem ser concedidos. Se o parâmetro for definido como sandbox, o direito será concedido ao usuário no modo seguro. Se o parâmetro for definido como default, o direito será concedido ao usuário no modo ao vivo.

Enum"default""sandbox"
Exemplo: "default"
user_countrystring or null

País do usuário.

Exemplo: "US"
user_external_idstringobrigatório

Identificador de usuário exclusivo.

Exemplo: "user-external-id"
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/admin/entitlement/grant \
  -H 'Content-Type: application/json' \
  -d '{
    "code": "AAAA-BBBB-CCCC-DDDD",
    "drm": {
      "sku": "com.xsolla.key_1"
    },
    "game": {
      "sku": "com.xsolla.game_1"
    },
    "mode": "default",
    "user_country": "US",
    "user_external_id": "user-external-id"
  }'

Respostas

O direito foi concedido.

Resposta
Sem conteúdo

Revogar direito (admin)Server-sideAdmin

Pedido

Revoga o direito do usuário.

Atenção

Códigos de jogos ou jogos para plataformas sem DRM podem ser apenas revogados.
Segurança
basicAuth
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
Corpoapplication/jsonobrigatório
drmobjectobrigatório

Objeto com propriedades DRM.

Exemplo: {"sku":"com.xsolla.key_1"}
drm.​skustring(Game-Keys_drm_sku)obrigatório

ID de DRM exclusivo.

Enum"steam""playstation""xbox""uplay""origin""drmfree""gog""epicgames""nintendo_eshop""discord_game_store"
Exemplo: "steam"
gameobjectobrigatório

Objeto com propriedades do jogo.

Exemplo: {"sku":"com.xsolla.game_1"}
game.​skustring(Game-Keys_game_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$obrigatório

ID de pacote de chaves exclusivo.

Exemplo: "theGreatestGameSku"
modestringobrigatório

Que tipo de direitos devem ser revogados. Se o parâmetro for definido como sandbox, o direito será revogado do usuário no modo sandbox. Se o parâmetro for definido como default, o direito será revogado do usuário no modo ativo.

Enum"default""sandbox"
Exemplo: "default"
user_external_idstringobrigatório

Identificador de usuário exclusivo.

Exemplo: "user-external-id"
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/admin/entitlement/revoke \
  -H 'Content-Type: application/json' \
  -d '{
    "drm": {
      "sku": "com.xsolla.key_1"
    },
    "game": {
      "sku": "com.xsolla.game_1"
    },
    "mode": "default",
    "user_external_id": "user-external-id"
  }'

Respostas

Revogação bem-sucedida.

Resposta
Sem conteúdo

Obter lista de jogos de propriedade do usuárioClient-side

Pedido

Obtenha a lista de jogos de propriedade do usuário. A resposta conterá uma matriz de jogos de propriedade de um usuário específico.

Atenção

Todos os projetos têm uma 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.
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
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
sandboxinteger

Que tipo de direitos devem ser devolvidos. Se o parâmetro for definido como 1, apenas os direitos recebidos pelo usuário no modo sandbox serão retornados. Se o parâmetro não for passado ou estiver definido como 0, apenas os direitos recebidos pelo usuário no modo ativo serão retornados.

Padrão 0
additional_fields[]Array of strings

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

curl -i -X GET \
  'https://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/entitlement?limit=50&offset=0&sandbox=0&additional_fields%5B%5D=string' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Respostas

Lista de chaves de jogo que o usuário possui 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(Game-Keys_entitlement_item)
total_items_countinteger(Pagination_total-items-count)

Número total de itens no sistema.

Exemplo: 10
Resposta
application/json
{ "has_more": false, "items": [ {} ], "total_items_count": 1 }
Operações
Operações

Cupons

Esta API permite que você gerencie cupons.

Operações

Códigos promocionais

Esta API permite gerenciar códigos promocionais.

Operações

Ofertas de catálogo exclusivas

Essa API permite que você gerencie ofertas de catálogo exclusivas.

Operações

Descontos

Esta API permite-lhe gerir promoções de desconto.

Operações

Bônus

Esta API permite gerenciar promoções de bônus.

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