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

Pedido

Recebe uma lista de conjuntos para montar um catálogo.

Atenção

Todos os projetos têm uma limitação na quantidade de itens que você pode receber na resposta. O valor padrão e máximo é de 50 itens por resposta.

Observação

O use das chamadas API de catálogo de itens está disponível sem autorização, mas para obter um catálogo personalizado, você deve passar o JWT do usuário no cabeçalho da Autorização.
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
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://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/items/bundle?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 conjuntos 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(Bundles_client_bundle)
Resposta
application/json
{ "has_more": true, "items": [ {} ] }

Obter lista de pacotes por grupo especificadoClient-side

Pedido

Recebe uma lista de conjuntos dentro de um grupo para montar um catálogo.

Atenção

Todos os projetos têm uma limitação na quantidade de itens que você pode receber na resposta. O valor padrão e máximo é de 50 itens por resposta.

Observação


O use das chamadas API de catálogo de itens está disponível sem autorização, mas para obter um catálogo personalizado, você deve passar o JWT do usuário no cabeçalho da Autorização.
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://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/items/bundle/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 conjuntos 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(Bundles_client_bundle)
Resposta
application/json
{ "has_more": true, "items": [ {} ] }

Obter pacote especificadoClient-side

Pedido

Obtém um conjunto especificado.

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
skustringobrigatório

SKU de conjunto.

Exemplo: kg_1
Consulta
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
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://xsolla.redocly.app/_mock/pt/api/shop-builder/v2/project/44056/items/bundle/sku/kg_1?promo_code=WINTER2021&show_inactive_time_limited_items=1&additional_fields%5B%5D=media_list' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

Respostas

O conjunto especificado foi recebido com sucesso.

Corpoapplication/json
attributesArray of objects(Bundles_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"}]}}
bundle_typestring(Bundles_bundle_type)

Tipo de pacote. Use standard para criar um pacote com itens e especificar os SKUs dos itens incluídos no pacote. Use partner_side_content para criar um pacote vazio e adicionar itens do seu lado usando um webhook. Esse tipo é usado somente para a personalização de catálogos no lado do parceiro.

Padrão "standard"
Enum"standard""partner_side_content"
Exemplo: "standard"
can_be_boughtboolean(Can_be_bought)

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

Exemplo: true
contentArray of objects(Bundles_client_content)

Conteúdo do pacote de conjuntos.

Exemplo: [{"attributes":[],"description":"Big Rocket - short description.","groups":[],"image_url":"https://popmedia.blob.core.windows.net/popyourself/male/outfit/male_armor_white_a-01.png","is_free":false,"name":"Big Rocket","price":{"amount":"10.99","amount_without_discount":"10.99","currency":"USD"},"quantity":100,"sku":"com.xsolla.big_rocket_1","type":"virtual_currency"}]
custom_attributesobject(json)(item-custom-attributes-response)

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

descriptionstring or null(Bundles_client_description)

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 or null(Bundles_image_url)

URL da imagem.

Exemplo: "https://image.example.com"
is_freeboolean(value-is_free)

Se true, o item é gratuito.

Padrão false
Exemplo: false
item_idinteger(Bundles_item_id)[ 1 .. 255 ] characters

ID de item exclusivo interno.

Exemplo: 1
limitsobject or null(Catalog_item_limits_with_hourly)

Limites de itens.

long_description(two-letter (object or null)) or (five-letter (object or null))(long-description-localization-object)

Objeto com traduções para a descrição longa do item. Aceita valores em um dos dois formatos: códigos de idioma minúsculos de duas letras (por exemplo, en) ou códigos de localidade de cinco caracteres (por exemplo, en-US). Embora ambos os formatos sejam aceitos, as respostas retornam códigos de idioma minúsculos de duas letras. Quando ambas as variantes para o mesmo idioma são fornecidas (por exemplo, en e en-US), o último valor fornecido é armazenado. Você pode encontrar a lista completa de idiomas suportados na documentação.

Any of:

Objeto com traduções para a descrição longa do item. Aceita valores em um dos dois formatos: códigos de idioma minúsculos de duas letras (por exemplo, en) ou códigos de localidade de cinco caracteres (por exemplo, en-US). Embora ambos os formatos sejam aceitos, as respostas retornam códigos de idioma minúsculos de duas letras. Quando ambas as variantes para o mesmo idioma são fornecidas (por exemplo, en e en-US), o último valor fornecido é armazenado. Você pode encontrar a lista completa de idiomas suportados na documentação.

media_listArray of objects(Bundles_media_list)

Ativos adicionais do conjunto.

Exemplo: [{"type":"image","url":"https://cdn3.xsolla.com/img/misc/images/71ab1e12126f2103e1868076f0acb21a.jpg"}]
namestring(Bundles_client_name)

Nome do item.

Exemplo: "Big Rocket"
orderinteger(Bundles_order)

Prioridade de pedido do conjunto na lista.

Padrão 1
Exemplo: 1
periodsArray of objects or null(item-periods)

Período de venda de itens.

priceobject or null(Bundles_price)

Preço do item.

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(Bundles_sku)[ 1 .. 255 ] characters^[a-zA-Z0-9_\-–.]*$

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

Exemplo: "bundle_1"
total_content_priceobject or null(Bundles_total_content_price)

Soma dos preços do conteúdo do conjunto.

typestring(Bundles_type)

Tipo de item.

Exemplo: "bundle"
virtual_pricesArray of objects(Bundles_virtual_prices)

Preços virtuais.

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

Recompensa do item de ponto de valor.

Resposta
application/json
{ "attributes": [], "bundle_type": "standard", "can_be_bought": true, "content": [ {} ], "custom_attributes": { "attr": "value", "purchased": 0 }, "description": "pricePoint_44056_1.", "groups": [], "image_url": null, "is_free": false, "item_id": 610316, "limits": { "per_user": {} }, "long_description": null, "media_list": [], "name": "kg_10.00_bundle", "order": 999, "periods": [ {} ], "price": { "amount": "9.99", "amount_without_discount": "9.99", "currency": "USD" }, "promotions": [], "sku": "com.xsolla.kg_1", "total_content_price": { "amount": "10.99", "amount_without_discount": "10.99", "currency": "USD" }, "type": "bundle", "virtual_prices": [], "vp_rewards": [ {}, {} ] }
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
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