Saltar para o conteúdo

Visão Geral

Digital Distribution Hub é uma nova solução Xsolla que visa conectar pagamentos digitais e baseados em dinheiro através da tecnologia de pagamentos push e e-commerce.

Essa referência combina pontos de extremidade de API para dois produtos Xsolla: In-Game Store e Pay Station. Há dois URLs base:

  • https://store.xsolla.com/api para os grupos Common, Catalog, Cart e Order.
  • https://ps.xsolla.com para o grupo Notifications.

Os pontos de extremidade da API no grupo Catalog não exigem autorização.

Para trabalhar com operações nos grupos Cart e Order, você precisa gerar um token via Create user token.

Observação

Esta referência mostra o design de uma API futura e não uma interface totalmente funcional. Atualmente, você pode experimentar apenas os pontos de extremidade dos grupos Catalog e Notifications. Se você quiser compartilhar seus comentários, envie um e-mail para techdoc@xsolla.com.
Transferir a descrição da OpenAPI
Idiomas
Servidores
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/pt/api/digital-distribution-hub/
Operações
Operações

Obter chave de jogo para catálogo

Pedido

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

Segurança
AuthForClient
Caminho
project_idintegerobrigatório

ID do Projeto.

Exemplo: 44056
item_skustringobrigatório

SKU do item.

Exemplo: booster_mega_1
Consulta
localestring

Idioma 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. Campos disponíveis media_list, order, long_description.

countrystring

País para calcular preços regionais e restrições de catálogos. Código de país maiúsculo de duas letras de acordo com o padrão ISO 3166-1 alpha-2. Se você não especificar o país explicitamente, ele será calculado com base no endereço IP do usuário.

Padrão "US"
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/game/key/sku/booster_mega_1?locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Respostas

A chave do jogo foi recebida com sucesso.

Corpoapplication/json
attributesArray of objects(Catalog_client-attributes-common)

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

Padrão []
attributes[].​external_idstring(Catalog_admin-attribute-external_id)[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

ID de atributo exclusivo. O external_id pode conter apenas caracteres alfanuméricos latinos minúsculos, traços e sublinhados.

Exemplo: "attribute_1"
attributes[].​namestring

Nome do atributo.

Exemplo: "Genre"
attributes[].​valuesArray of objects
attributes[].​values[].​external_idstring(Catalog_value-external_id)[ 1 .. 255 ] characters^[-_.\d\w]+$

ID de valor exclusivo para um atributo. O external_id pode conter apenas caracteres alfanuméricos latinos minúsculos, traços e sublinhados.

Exemplo: "attribute_value"
attributes[].​values[].​valuestring

Valor do atributo.

Exemplo: "Strategy"
descriptionstring

Descrição do item.

Exemplo: "Game description"
drm_namestring

Nome do DRM.

Exemplo: "Steam"
drm_skustring

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

Exemplo: "steam"
groupsArray of objects(Catalog_inline_response_200_groups)

Grupos aos quais o item pertence.

Exemplo: [{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}]
groups[].​external_idstring
Exemplo: "accessory"
groups[].​namestring
Exemplo: "Accessory"
has_keysboolean

Se true, a chave de jogo tem chaves para venda.

Exemplo: true
image_urlstring

URL da imagem.

Exemplo: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
is_freeboolean

Se true, o item é gratuito.

Exemplo: false
is_pre_orderboolean

Se true, a chave de jogo é do tipo pré-venda e a data de lançamento não foi passada.

Exemplo: true
namestring

Nome do item.

Exemplo: "Game name"
priceobject(Catalog_inline_response_200_price)

Preços dos itens.

price.​amountstring

Preço do item com desconto.

Exemplo: "2.9900"
price.​amount_without_discountstring

Preço do item.

Exemplo: "2.9900"
price.​currencystring

Moeda de compra padrão. Código de três letras de acordo com o padrão ISO 4217.

Exemplo: "USD"
release_datestring

Data de lançamento da chave de jogo no formato ISO 8601.

Exemplo: "2020-08-11T10:00:00+03:00"
skustring

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

Exemplo: "game_1"
typestring

Tipo de item: game_key.

Exemplo: "game_key"
virtual_pricesArray of objects(Catalog_inline_response_200_virtual_prices)

Preços virtuais.

Exemplo: []
virtual_prices[].​amountinteger

Preço do item com desconto em moedas virtuais.

Exemplo: 100
virtual_prices[].​amount_without_discountinteger

Preço do item.

Exemplo: 200
virtual_prices[].​descriptionstring

Descrição da moeda virtual.

Exemplo: "Big Rocket - description"
virtual_prices[].​image_urlstring

Imagem da moeda virtual.

Exemplo: "http://image.png"
virtual_prices[].​is_defaultboolean

Se o preço é padrão para o item ou não.

Exemplo: true
virtual_prices[].​namestring

Nome da moeda virtual.

Exemplo: "SHOTGUN FOR TRUE RAIDERS"
virtual_prices[].​skustring

SKU do item de moeda virtual.

Exemplo: "vc_test"
virtual_prices[].​typestring

Tipo de moeda virtual.

Exemplo: "virtual_currency"
Resposta
application/json
{ "attributes": { "$ref": "#/components/examples/client-attribute-game-horror/Catalog_value" }, "description": "Game description", "drm_name": "Steam", "drm_sku": "steam", "groups": [ {}, {} ], "has_keys": true, "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "is_free": false, "is_pre_order": true, "name": "Game name", "price": { "amount": "30.5", "amount_without_discount": "30.5", "currency": "USD" }, "release_date": "2020-08-11T10:00:00+03:00", "sku": "game_1", "type": "game_key", "virtual_prices": [] }

Pedido

Obtém um jogo para o catálogo.

Segurança
AuthForClient
Caminho
project_idintegerobrigatório

ID do Projeto.

Exemplo: 44056
item_skustringobrigatório

SKU do item.

Exemplo: booster_mega_1
Consulta
localestring

Idioma 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. Campos disponíveis media_list, order, long_description.

countrystring

País para calcular preços regionais e restrições de catálogos. Código de país maiúsculo de duas letras de acordo com o padrão ISO 3166-1 alpha-2. Se você não especificar o país explicitamente, ele será calculado com base no endereço IP do usuário.

Padrão "US"
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/game/sku/booster_mega_1?locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Respostas

Jogo recebido com sucesso.

Corpoapplication/json
attributesArray of objects(Catalog_client-attributes)

Lista de atributos e seus valores correspondentes ao Jogo.

Atenção. Essa parte da resposta estará disponível somente se você enviar o parâmetro de consulta `additional_fields[]=attributes`.
Padrão []
attributes[].​external_idstring(Catalog_admin-attribute-external_id)[ 1 .. 255 ] characters^[a-zA-Z0-9-_]+$

ID de atributo exclusivo. O external_id pode conter apenas caracteres alfanuméricos latinos minúsculos, traços e sublinhados.

Exemplo: "attribute_1"
attributes[].​namestring

Nome do atributo.

Exemplo: "Genre"
attributes[].​valuesArray of objects
attributes[].​values[].​external_idstring(Catalog_value-external_id)[ 1 .. 255 ] characters^[-_.\d\w]+$

ID de valor exclusivo para um atributo. O external_id pode conter apenas caracteres alfanuméricos latinos minúsculos, traços e sublinhados.

Exemplo: "attribute_value"
attributes[].​values[].​valuestring

Valor do atributo.

Exemplo: "Strategy"
descriptionstring

Descrição do item.

Exemplo: "Game description"
groupsArray of objects(Catalog_inline_response_200_groups)

Grupos aos quais o item pertence.

Exemplo: [{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}]
groups[].​external_idstring
Exemplo: "accessory"
groups[].​namestring
Exemplo: "Accessory"
image_urlstring

URL da imagem.

Exemplo: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
namestring

Nome do item.

Exemplo: "Game name"
skustring

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

Exemplo: "game_1"
typestring

Tipo de item: virtual_good/virtual_currency/bundle/physical_good/unit.

Exemplo: "unit"
unit_itemsArray of objects(Catalog_inline_response_200_unit_items)
Exemplo: [{"drm_name":"Steam","drm_sku":"steam","has_keys":true,"is_free":false,"is_pre_order":true,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"game_key_01","type":"game_key","virtual_prices":[]},{"drm_name":"Origin","drm_sku":"origin","has_keys":false,"is_free":false,"is_pre_order":false,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_key_02","type":"game_key","virtual_prices":[]}]
unit_items[].​drm_namestring

Nome do DRM.

Exemplo: "Steam"
unit_items[].​drm_skustring

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

Exemplo: "steam"
unit_items[].​has_keysboolean

Se true, a chave de jogo tem chaves para venda.

Exemplo: false
unit_items[].​is_freeboolean

Se true, o item é gratuito.

Exemplo: false
unit_items[].​is_pre_orderboolean

Se true, a chave de jogo é do tipo pré-venda e a data de lançamento não foi passada.

Exemplo: true
unit_items[].​priceobject(Catalog_inline_response_200_price)

Preços dos itens.

unit_items[].​price.​amountstring

Preço do item com desconto.

Exemplo: "2.9900"
unit_items[].​price.​amount_without_discountstring

Preço do item.

Exemplo: "2.9900"
unit_items[].​price.​currencystring

Moeda de compra padrão. Código de três letras de acordo com o padrão ISO 4217.

Exemplo: "USD"
unit_items[].​release_datestring

Data de lançamento da chave de jogo no formato ISO 8601.

Exemplo: "2020-08-11T10:00:00+03:00"
unit_items[].​skustring

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

Exemplo: "game_01"
unit_items[].​typestring

Tipo de item: game_key.

Exemplo: "game_key"
unit_items[].​virtual_pricesArray of objects(Catalog_inline_response_200_virtual_prices)

Preços virtuais.

unit_items[].​virtual_prices[].​amountinteger

Preço do item com desconto em moedas virtuais.

Exemplo: 100
unit_items[].​virtual_prices[].​amount_without_discountinteger

Preço do item.

Exemplo: 200
unit_items[].​virtual_prices[].​descriptionstring

Descrição da moeda virtual.

Exemplo: "Big Rocket - description"
unit_items[].​virtual_prices[].​image_urlstring

Imagem da moeda virtual.

Exemplo: "http://image.png"
unit_items[].​virtual_prices[].​is_defaultboolean

Se o preço é padrão para o item ou não.

Exemplo: true
unit_items[].​virtual_prices[].​namestring

Nome da moeda virtual.

Exemplo: "SHOTGUN FOR TRUE RAIDERS"
unit_items[].​virtual_prices[].​skustring

SKU do item de moeda virtual.

Exemplo: "vc_test"
unit_items[].​virtual_prices[].​typestring

Tipo de moeda virtual.

Exemplo: "virtual_currency"
unit_typestring

Tipo de unidade: game.

Exemplo: "game"
Resposta
application/json
{ "attributes": { "$ref": "#/components/examples/client-attribute-game/Catalog_value" }, "description": "Game description", "groups": [ {}, {} ], "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "name": "Game name", "sku": "game_1", "type": "unit", "unit_items": [ {}, {} ], "unit_type": "game" }
Operações
Operações
Operações
Operações
Operações