Перейти к содержимому

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.

Скачать описание OpenAPI
Языки
Серверы
Mock server
https://xsolla.redocly.app/_mock/ru/api/shop-builder/
https://store.xsolla.com/api/
Операции

Персонализированный каталог

Данный API позволяет задавать правила для пользовательских атрибутов. Если пользователь соответствует всем условиям для конкретного правила, будут показаны персонализированные товары.

Узнать о персонализированных акциях можно в подразделе "Скидки" раздела "Акции".

Чтобы передать атрибуты перед покупкой, вы можете использовать API Авторизации Иксолла или передать их в свойство user.attributes при генерации токена с помощью API Платежей Иксолла.

Операции
Операции
Операции

Корзина (на стороне клиента)

Операции

Корзина (на стороне сервера)

Операции

Оплата (на стороне клиента)

Операции

Оплата (на стороне сервера)

Операции
Операции
Операции
Операции
Операции
Операции

Catalog

Данный API позволяет получать продаваемые товары любого вида или конкретный товар.

Операции
Операции
Операции
Операции
Операции
Операции

Купоны

Этот API позволяет вам управлять купонами.

Операции

Промокоды

Этот API позволяет вам управлять промокодами.

Операции

Уникальный каталог предложений

Этот API позволяет вам управлять уникальными предложениями каталога.

Операции

Скидки

Этот API позволяет вам управлять скидочными акциями.

Операции

Бонусы

Этот API позволяет вам управлять бонусными акциями.

Операции

Создание акции с бонусамиServer-sideAdmin

Запрос

Создает акцию с бонусами.

Акция добавляет бесплатные бонусные товары к покупке, совершенной пользователем. Акция может быть применена к каждой покупке в рамках проекта или к покупке, включающей определенные товары.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

Пример: 44056
Телоapplication/json
attribute_conditionsArray of type = string (object) or type = number (object) or type = date (object)(promotion_user-attribute_conditions_model-post)[ 1 .. 100 ] items

Условия для проверки атрибутов пользователя. Определяют доступность акции на основе соответствия атрибутов пользователя всем указанным условиям.

bonusArray of objects or nullобязательный
bonus[].​quantitynumber

Количество товаров.

По умолчанию 1
bonus[].​skustring

Артикул товара.

По умолчанию "elven_shield"
conditionArray of objects or nullобязательный

Набор товаров, которые необходимо включить в покупку для применения акции. Если этот параметр равен null, акция будет применена к любым покупкам в рамках проекта.

condition[].​skustring

Артикул товара.

По умолчанию "elven_sword"
excluded_promotionsArray of integers(excluded_promotions)

Список акций, которые исключаются при применении этой акции.
Example: [12, 789]

Пример: [12,789]
idinteger

ID акции. Уникальный идентификатор акции в рамках проекта.

is_enabledboolean(Promotions_is_enabled)

Активирована ли акция.

Пример: true
limitsobject(Promotions_promotion_limits)

Ограничения акции.

nameobjectобязательный

Название акции. Данный параметр должен содержать пары ключ/значение, где ключ — это локаль в формате "^[a-z]{2}-[A-Z]{2}$", значение — строка.

Пример: {"de-DE":"Sommersaison Bonus","en-US":"Summer season bonus"}
name.​property name*stringдополнительное свойство
price_conditionsArray of objects or null(price_conditions_bonus)

Массив объектов с условиями, задающими ценовой диапазон применения акции.
Акция применяется только к товарам, цена которых удовлетворяет всем условиям в массиве. Если вы передаете этот массив, в объекте condition передайте значение null.

promotion_periodsArray of objects(promotion_periods)

Периоды действия акции. Если указано больше одного периода, параметры date_from и date_until становятся обязательными.

curl -i -X POST \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ru/api/shop-builder/v3/project/44056/admin/promotion/bonus \
  -H 'Content-Type: application/json' \
  -d '{
    "attribute_conditions": [
      {
        "attribute": "account_status",
        "can_be_missing": false,
        "operator": "eq",
        "type": "string",
        "value": "golden"
      }
    ],
    "bonus": [
      {
        "quantity": 50000,
        "sku": "com.xsolla.mp_credits"
      }
    ],
    "condition": [
      {
        "sku": "com.xsolla.year_1_season_pass"
      }
    ],
    "name": {
      "de-DE": "Neujahrsbonus",
      "en-US": "New Year Bonus"
    },
    "promotion_periods": [
      {
        "date_from": "2020-04-15T18:16:00+05:00",
        "date_until": "2020-04-25T18:16:00+05:00"
      }
    ]
  }'

Ответы

Акция успешно создана.

Телоapplication/json
promotion_idinteger

ID акции. Уникальный идентификатор акции в рамках проекта.

Ответ
application/json
{ "promotion_id": 2384756 }

Удаление бонусной акцииServer-sideAdmin

Запрос

Удаляет бонусную акцию. Удаленная акция:

  • Пропадет из списка акций, настроенных в вашем проекте.
  • Не будет применяться к каталогу товаров и к корзине. Пользователь не сможет получить бонусные товары по этой акции.

После удаления акция не может быть восстановлена.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

Пример: 44056
promotion_idintegerобязательный

ID акции. Уникальный идентификатор акции в рамках проекта.

Пример: 111425
curl -i -X DELETE \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ru/api/shop-builder/v3/project/44056/admin/promotion/111425/bonus

Ответы

Акция была успешно удалена.

Ответ
Нет содержимого

Получение акции с бонусамиServer-sideAdmin

Запрос

Получает акцию с бонусами.

Акция добавляет бесплатные бонусные товары к покупке, совершенной пользователем. Акция может быть применена к каждой покупке в рамках проекта или к покупке, включающей определенные товары.

Безопасность
basicAuth
Путь
project_idintegerобязательный

ID проекта. Вы можете найти этот параметр в Личном кабинете рядом с названием проекта.

Пример: 44056
promotion_idintegerобязательный

ID акции. Уникальный идентификатор акции в рамках проекта.

Пример: 111425
curl -i -X GET \
  -u <username>:<password> \
  https://xsolla.redocly.app/_mock/ru/api/shop-builder/v3/project/44056/admin/promotion/111425/bonus

Ответы

Акция с бонусами успешно получена.

Телоapplication/json
attribute_conditionsArray of type = string (object) or type = number (object) or type = date (object)(promotion_user-attribute_conditions_model-get)[ 1 .. 100 ] items

Условия для проверки атрибутов пользователя. Определяют доступность акции на основе соответствия атрибутов пользователя всем указанным условиям.

bonusArray of objects or null
conditionArray of objects or null

Набор товаров, которые необходимо включить в покупку для применения акции. Если этот параметр равен null, акция будет применена к любым покупкам в рамках проекта.

excluded_promotionsArray of integers(excluded_promotions)

Список акций, которые исключаются при применении этой акции.
Example: [12, 789]

Пример: [12,789]
idinteger

ID акции. Уникальный идентификатор акции в рамках проекта.

is_enabledboolean
По умолчанию true
limitsobject(Promotions_promotion_limits_response)

Ограничения акции.

nameobject

Название акции. Данный параметр должен содержать пары ключ/значение, где ключ — это локаль в формате "^[a-z]{2}-[A-Z]{2}$", значение — строка.

Пример: {"de-DE":"Sommersaison Bonus","en-US":"Summer season bonus"}
price_conditionsArray of objects or null(price_conditions_bonus)

Массив объектов с условиями, задающими ценовой диапазон применения акции.
Акция применяется только к товарам, цена которых удовлетворяет всем условиям в массиве. Если вы передаете этот массив, в объекте condition передайте значение null.

promotion_periodsArray of objects(promotion_periods)

Периоды действия акции. Если указано больше одного периода, параметры date_from и date_until становятся обязательными.

Ответ
application/json
{ "bonus": [ {}, {}, {} ], "condition": [ {}, {} ], "excluded_promotions": [ 23, 45 ], "id": 1, "is_enabled": true, "limits": { "per_item": null, "per_user": {}, "recurrent_schedule": {} }, "name": { "de-DE": "Neujahrsbonus", "en-US": "New Year Bonus" }, "price_conditions": [ {}, {} ], "promotion_periods": [ {} ] }
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции