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

Введение

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
Тело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 } }

Обновление лимита на покупкуServer-sideAdmin

Запрос

Обновляет лимит на покупку товара, чтобы пользователь мог купить его снова. Если параметр user равен null, этот метод обновляет лимит для всех пользователей.

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

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

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

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

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

Пример: booster_mega_1
Телоapplication/json
userobject or null(User-limit_user_flexible)обязательный
user.​user_external_idstring(User-limit_user-external-id)non-empty^\S+$

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

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

Ответы

Лимиты успешно обновлены.

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

Catalog

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

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