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

Введение

API каталога позволяет настраивать каталог внутриигровых товаров на стороне Xsolla и отображать каталог пользователям в вашем игровом магазине.

API позволяет вам управлять такими сущностями каталога, как:

  • Виртуальные предметы — внутриигровые предметы, например оружие, скины, бустеры.
  • Виртуальная валюта — виртуальные деньги, которые используются для приобретения виртуальных товаров. Пакеты виртуальной валюты — предустановленные наборы виртуальной валюты.
  • Бандлы — комбинированные наборы виртуальных предметов, валюты или игровых ключей, продаваемые как единый артикул.
  • Игровые ключи — ключи для игр и DLC, распространяемые через такие платформы, как Steam, или других DRM-провайдеров.
  • Группы — логические группировки для организации и сортировки товаров в каталоге.

Методы API

Методы API делятся на следующие группы:

  • Admin — методы для создания, обновления, удаления и настройки товаров и групп каталога. Для вызова требуется базовая HTTP-аутентификация с использованием учетных данных Личного кабинета. Не предназначены для построения витрин для конечных пользователей.
  • Catalog — методы для получения товаров и построения витрин для конечных пользователей. Поддерживают опциональную аутентификацию с использованием JWT пользователя для возврата персонализированных данных, таких как пользовательские лимиты и активные промоакции.
Скачать описание OpenAPI
Языки
Серверы
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/ru/api/catalog/
Операции
Операции
Операции
Операции
Операции
Операции
Операции
Операции

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

Операции

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

Операции

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

Операции

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

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

Получение лимита доступных пользователю товаровServer-sideAdmin

Запрос

Возвращает оставшееся количество товаров, доступных указанному пользователю, в пределах установленного ограничения.

User limit API позволяет вам продавать товар в ограниченном количестве. Чтобы настроить ограничения на покупку, перейдите в раздел Admin нужного типа товара:

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

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

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

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

Пример: booster_mega_1
Запрос
user_external_idstringобязательный

External ID пользователя

Пример: user_external_id=d342dad2-9d59-11e9-a384-42010aa8003f
curl -i -X GET \
  -u <username>:<password> \
  'https://store.xsolla.com/api/v2/project/44056/admin/user/limit/item/sku/booster_mega_1?user_external_id=d342dad2-9d59-11e9-a384-42010aa8003f'

Ответы

Ограничения на покупку для пользователя были успешно получены.

Телоapplication/json
per_userobject
Ответ
application/json
{ "per_user": { "available": 9, "total": 10 } }

Увеличение лимита доступных пользователю товаровServer-sideAdmin

Запрос

Увеличивает оставшееся количество товаров, доступных указанному пользователю, в пределах установленного ограничения.

User limit API позволяет продавать товар в ограниченном количестве. Чтобы настроить ограничения на покупку, перейдите в раздел Admin нужного типа товара:

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

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

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

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

Пример: booster_mega_1
Телоapplication/json
availableinteger(User-limit_available)>= 1обязательный

Оставшееся количество товаров для продажи или доступных акций для пользователя в пределах установленных ограничений.

userobject(User-limit_user)обязательный
user.​user_external_idstring(User-limit_user-external-id)non-empty^\S+$обязательный

External ID пользователя.

curl -i -X POST \
  -u <username>:<password> \
  https://store.xsolla.com/api/v2/project/44056/admin/user/limit/item/sku/booster_mega_1 \
  -H 'Content-Type: application/json' \
  -d '{
    "available": 1,
    "user": {
      "user_external_id": "d342dad2-9d59-11e9-a384-42010aa8003f"
    }
  }'

Ответы

Ограничения на покупку для пользователя были успешно получены.

Телоapplication/json
per_userobject
Ответ
application/json
{ "per_user": { "available": 9, "total": 10 } }

Настройка лимита доступных пользователю товаровServer-sideAdmin

Запрос

Устанавливает количество товаров, которые указанный пользователь может купить в пределах ограничения, примененного после его увеличения или уменьшения.

User limit API позволяет продавать товар в ограниченном количестве. Чтобы настроить ограничения покупку, перейдите в раздел Admin нужного типа товара:

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

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

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

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

Пример: booster_mega_1
Телоapplication/json
availableinteger(User-limit_available_flexible)>= 0обязательный

Оставшееся количество товаров для продажи или доступных акций для пользователя в пределах установленных ограничений.

userobject(User-limit_user)обязательный
user.​user_external_idstring(User-limit_user-external-id)non-empty^\S+$обязательный

External ID пользователя.

curl -i -X PUT \
  -u <username>:<password> \
  https://store.xsolla.com/api/v2/project/44056/admin/user/limit/item/sku/booster_mega_1 \
  -H 'Content-Type: application/json' \
  -d '{
    "available": 0,
    "user": {
      "user_external_id": "d342dad2-9d59-11e9-a384-42010aa8003f"
    }
  }'

Ответы

Ограничения на покупку для пользователя были успешно получены.

Телоapplication/json
per_userobject
Ответ
application/json
{ "per_user": { "available": 9, "total": 10 } }
Операции
Операции
Операции
Операции

Catalog

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

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