Skip to content

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.

Download OpenAPI description
Languages
Servers
Mock server
https://xsolla.redocly.app/_mock/api/shop-builder/
https://store.xsolla.com/api/
Operations

Personalized catalog

This API allows to specify rules for user attributes. If the user meets all conditions for a concrete rule, personalized items will be shown.

For personalized promotions see Promotions section.

To pass attributes before a purchase, you can use Xsolla Login API or pass them into user.attributes property while generating token using Pay Station API.

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations

Catalog

This API allows getting any kind of sellable items or specific item.

Operations
Operations
Operations
Operations
Operations

Upload codes by IDServer-sideAdmin

Request

Uploads codes by game key ID.

Security
basicAuth
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
item_idstringrequired

Item ID.

Example: 656
Bodymultipart/form-data
filestring(binary)required

File with codes.

Example: "keys.txt"
region_idinteger

Region ID.

Example: 1
curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/api/shop-builder/v2/project/44056/admin/items/game/key/upload/id/656 \
  -H 'Content-Type: multipart/form-data' \
  -F file=keys.txt \
  -F region_id=1

Responses

Codes loading session information was successfully received.

Bodyapplication/json
session_idstring
Example: "fc7105b6e8ee01339582970b37697242"
count_uploadedinteger
Example: 0
count_totalinteger
Example: 100
count_skippedinteger
Example: 10
statusstring
Example: "processing"
Response
application/json
{ "session_id": "fc7105b6e8ee01339582970b37697242", "count_uploaded": 0, "count_total": 100, "count_skipped": 10, "status": "processing" }

Get codes loading session informationServer-sideAdmin

Request

Gets codes loading session information.

Security
basicAuth
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
session_idstringrequired

Session ID.

Default "fc7105b6e8ee01339582970b37697242"
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/api/shop-builder/v2/project/44056/admin/items/game/key/upload/session/{session_id}'

Responses

Codes loading session information was successfully received.

Bodyapplication/json
session_idstring
Example: "fc7105b6e8ee01339582970b37697242"
count_uploadedinteger
Example: 0
count_totalinteger
Example: 100
count_skippedinteger
Example: 10
statusstring
Example: "processing"
Response
application/json
{ "session_id": "fc7105b6e8ee01339582970b37697242", "count_uploaded": 0, "count_total": 100, "count_skipped": 10, "status": "processing" }

Request

Gets a certain number of codes by game key SKU.

Security
basicAuth
Path
project_idintegerrequired

Project ID. You can find this parameter in your Publisher Account next to the name of the project.

Example: 44056
item_skustringrequired

Item SKU.

Example: booster_mega_1
Query
user_emailstringrequired

User email.

Example: user_email=email@email.com
quantityintegerrequired

Codes quantity.

Example: quantity=100
reasonstringrequired

Reason receiving codes.

Example: reason=Very important
region_idinteger

Region ID.

Default 1
curl -i -X GET \
  -u <username>:<password> \
  'https://xsolla.redocly.app/_mock/api/shop-builder/v2/project/44056/admin/items/game/key/request/sku/booster_mega_1?user_email=email%40email.com&quantity=100&reason=Very+important&region_id=1'

Responses

Codes were successfully received.

Bodytext/plain
string
Response
text/plain
PIN-CODE-ALL PIN-CODE-ALL-3
Operations

Coupons

This API allows to you to manage coupons.

Operations

Promo codes

This API allows to manage promo codes.

Operations

Unique catalog offers

This API allows to you to manage unique catalog offers.

Operations

Discounts

This API allows to you to manage discount promotions.

Operations

Bonuses

This API allows to manage bonus promotions.

Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations
Operations