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/deprecated/inventory/
https://store.xsolla.com/api/
Operações
Operações

Conceder itens por compras aos usuáriosServer-sideAdmin

Pedido

Adiciona os itens especificados por compra aos inventários de usuários especificados.

Atenção

Apenas 50 operações podem ser processadas de uma só vez. As operações que excederem esse limite serão ignoradas.
Segurança
basicAuth
Caminho
project_idintegerobrigatório

ID do projeto.

Padrão 44056
Corpoapplication/jsonobrigatórioArray [
commentstring[ 1 .. 255 ] characters

Descrição da operação. Por exemplo: "Recompensas mensais por desafio".

Padrão "Monthly challenge rewards"
custom_parametersobject(Player-Inventory_custom_parameters)[ 1 .. 200 ] properties

Parâmetros específicos do projeto.

Exemplo: {"array_param":[{"user_device_info":{"engine_version":"Unity 2020.2.0b5","os":"windows"},"user_public_id":{"nickname":"player1"}},{"user_device_info":{"engine_version":"UE 4.25","os":"mac"},"user_public_id":{"nickname":"player1"}}],"bool_param":true,"int_param":100,"null_param":null,"object_param":{"key":"value"}}
itemsArray of objectsnon-emptyobrigatório
items[].​quantitynumberobrigatório

Número de itens dessa classe que precisava ser concedido.

Padrão 1
items[].​skustringobrigatório

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

Padrão "booster_mega_1"
platformstring

Plataforma de publicação em que o usuário joga.

Padrão "xsolla"
Enum"playstation_network""xbox_live""xsolla""pc_standalone""nintendo_shop""google_play""app_store_ios""android_standalone""ios_standalone""android_other"
purchaseobjectobrigatório
purchase.​amountstringobrigatório

Valor da compra antes de qualquer dedução.

Padrão "2.99"
purchase.​currencystringobrigatório

Moeda de compra no padrão ISO 4217.

Padrão "USD"
purchase.​external_purchase_datestringobrigatório

Data de compra no padrão ISO 8601.

Padrão "2020-01-01T05:00:00+05:00"
purchase.​external_purchase_idstringobrigatório

Identificador de fatura de compra da plataforma em que uma compra foi feita.

Padrão "10-534-35"
userobjectobrigatório
user.​idstring

O identificador de usuário exclusivo na plataforma.

Padrão "d342dad2-9d59-11e9-a384-42010aa8003f"
]
curl -i -X POST \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/pt/api/deprecated/inventory/v2/project/{project_id}/inventory/purchase' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "purchase": {
        "amount": "3.5",
        "comment": "xsolla",
        "currency": "USD",
        "custom_parameters": [
          {
            "user_device_info": {
              "engine_version": "Unity 2020.2.0b5",
              "os": "windows"
            },
            "user_public_id": {
              "nickname": "player1"
            }
          },
          {
            "comment": "xsolla",
            "custom_parameters": {
              "content_creator_rewards": [
                {
                  "content_creator": {
                    "id": "cc1"
                  },
                  "reward": {
                    "amount": "10.00",
                    "currency": "USD"
                  }
                },
                {
                  "content_creator": {
                    "id": "cc2"
                  },
                  "reward": {
                    "amount": "15.00",
                    "currency": "RUB"
                  }
                }
              ]
            },
            "items": [
              {
                "quantity": 5,
                "sku": "com.xsolla.panda_sdk3"
              },
              {
                "quantity": 3,
                "sku": "com.xsolla.panda_sdk2"
              }
            ],
            "platform": "xsolla",
            "purchase": {
              "amount": "3.5",
              "currency": "USD",
              "external_purchase_date": "2020-01-01T00:00:00+05:00",
              "external_purchase_id": "1000001"
            },
            "user": {
              "id": "83857636-65b4-11e8-9ccb-42010a8a001c"
            }
          }
        ],
        "external_purchase_date": "2020-01-01T00:00:00+05:00",
        "external_purchase_id": "1000000",
        "items": [
          {
            "quantity": 5,
            "sku": "com.xsolla.panda_sdk1"
          },
          {
            "quantity": 3,
            "sku": "com.xsolla.panda_sdk2"
          }
        ],
        "platform": "xsolla",
        "user": {
          "id": "672c91cd-65db-4b6e-ad68-6e93b21249d8"
        }
      }
    }
  ]'

Respostas

Compra bem-sucedida do usuário.

Corpoapplication/json
countinteger
Exemplo: 10
operationsArray of objects
Resposta
application/json
{ "count": 2, "operations": [ {}, {} ] }

Revogar itens de inventárioServer-sideAdmin

Pedido

Revoga o acesso a itens de vários usuários.

Atenção

Apenas 50 operações podem ser processadas de uma só vez. As operações que excederem esse limite serão ignoradas.
Segurança
basicAuth
Caminho
project_idintegerobrigatório

ID do projeto.

Padrão 44056
Corpoapplication/jsonobrigatórioArray [
commentstring[ 1 .. 255 ] characters

Descrição da operação. Por exemplo: "Item foi transferido para outro jogador".

Padrão "Item was transferred to another player"
itemsArray of objectsnon-emptyobrigatório
items[].​quantityinteger>= 1obrigatório

Número de itens dessa classe que precisaram ser revogados.

Padrão 1
items[].​skustringnon-emptyobrigatório

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

Padrão "booster_mega_1"
platformstring

Plataforma de publicação em que o usuário joga.

Padrão "xsolla"
Enum"playstation_network""xbox_live""xsolla""pc_standalone""nintendo_shop""google_play""app_store_ios""android_standalone""ios_standalone""android_other"
Exemplo: "xsolla"
userobjectobrigatório
user.​idstring

O identificador de usuário exclusivo na plataforma.

Padrão "d342dad2-9d59-11e9-a384-42010aa8003f"
]
curl -i -X POST \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/pt/api/deprecated/inventory/v2/project/{project_id}/inventory/revoke' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "comment": "Item was transferred to another player",
      "items": [
        {
          "quantity": 1,
          "sku": "booster_mega_1"
        }
      ],
      "platform": "xsolla",
      "user": {
        "id": "d342dad2-9d59-11e9-a384-42010aa8003f"
      }
    }
  ]'

Respostas

Revogação de itens de usuário bem-sucedida.

Corpoapplication/json
countinteger

Número de usuários cujos itens foram revogados com sucesso.

Exemplo: 10
operationsArray of objects

Descrição das operações.

Resposta
application/json
{ "count": 2, "operations": [ {}, {} ] }

Conceder itens aos usuáriosServer-sideAdmin

Pedido

Adiciona os itens especificados aos inventários de usuários especificados.

Atenção

Apenas 50 operações podem ser processadas de uma só vez. As operações que excederem esse limite serão ignoradas.
Segurança
basicAuth
Caminho
project_idintegerobrigatório

ID do projeto.

Padrão 44056
Corpoapplication/jsonobrigatórioArray [
commentstring[ 1 .. 255 ] characters

Descrição da operação. Por exemplo: "Recompensas mensais por desafio".

Padrão "Monthly challenge rewards"
itemsArray of objectsnon-emptyobrigatório
items[].​quantitynumberobrigatório

Número de itens dessa classe que precisava ser concedido.

Padrão 1
items[].​skustringobrigatório

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

Padrão "booster_mega_1"
platformstring

Plataforma de publicação em que o usuário joga.

Padrão "xsolla"
Enum"playstation_network""xbox_live""xsolla""pc_standalone""nintendo_shop""google_play""app_store_ios""android_standalone""ios_standalone""android_other"
userobjectobrigatório
user.​idstring

O identificador de usuário exclusivo na plataforma.

Padrão "d342dad2-9d59-11e9-a384-42010aa8003f"
]
curl -i -X POST \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/pt/api/deprecated/inventory/v2/project/{project_id}/inventory/reward' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "comment": "Monthly challenge rewards",
      "items": [
        {
          "quantity": 1,
          "sku": "booster_mega_1"
        }
      ],
      "platform": "playstation_network",
      "user": {
        "id": "d342dad2-9d59-11e9-a384-42010aa8003f"
      }
    }
  ]'

Respostas

Recompensa de usuário bem-sucedida.

Corpoapplication/json
countinteger
Exemplo: 10
operationsArray of objects
Resposta
application/json
{ "count": 2, "operations": [ {}, {} ] }

Definir itens para usuáriosServer-sideAdmin

Pedido

Define itens especificados para inventários de usuários especificados. Observe que os novos dados substituirão os dados antigos.

Atenção

Apenas 50 operações podem ser processadas de uma só vez. As operações que excederem esse limite serão ignoradas.
Segurança
basicAuth
Caminho
project_idintegerobrigatório

ID do projeto.

Padrão 44056
Corpoapplication/jsonobrigatórioArray [
commentstring[ 1 .. 255 ] characters

Descrição da operação. Por exemplo: "Sincronização mensal de inventário".

Padrão "Monthly inventory syncing"
itemsArray of objectsnon-emptyobrigatório
items[].​quantitynumberobrigatório

Número de itens dessa classe que precisava ser concedido.

Padrão 1
items[].​skustringobrigatório

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

Padrão "booster_mega_1"
platformstring

Plataforma de publicação em que o usuário joga.

Padrão "xsolla"
Enum"playstation_network""xbox_live""xsolla""pc_standalone""nintendo_shop""google_play""app_store_ios""android_standalone""ios_standalone""android_other"
userobjectobrigatório
user.​idstring

O identificador de usuário exclusivo na plataforma.

Padrão "d342dad2-9d59-11e9-a384-42010aa8003f"
]
curl -i -X POST \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/pt/api/deprecated/inventory/v2/project/{project_id}/inventory/set' \
  -H 'Content-Type: application/json' \
  -d '[
    {
      "comment": "Monthly inventory syncing",
      "items": [
        {
          "quantity": 1,
          "sku": "booster_mega_1"
        }
      ],
      "platform": "playstation_network",
      "user": {
        "id": "d342dad2-9d59-11e9-a384-42010aa8003f"
      }
    }
  ]'

Respostas

Resposta bem-sucedida.

Corpoapplication/json
countinteger
Exemplo: 10
operationsArray of objects
Resposta
application/json
{ "count": 2, "operations": [ {}, {} ] }
Operações