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

Введение

Digital Distribution Hub — новое решение Иксоллы, которое соединяет электронные и физические платежи через технологию push-платежей и e-commerce.

Данная документация включает в себя описание методов API для продуктов Внутриигровой магазин и Платежи. Используется два базовых URL-адреса:

  • https://store.xsolla.com/api для групп Общие, Каталог, Корзина и Заказ.
  • https://ps.xsolla.com для группы Уведомления.

Использование методов API из группы Каталог не требует авторизации.

Чтобы использовать методы API из групп Корзина и Заказ, вам необходимо создать токен.

Примечание

Данная документация не является полностью функциональным интерфейсом и представляет собой дизайн будущего API. В настоящее время вы можете использовать только методы из групп Каталог и Уведомления. Если вы хотите поделиться обратной связью, отправьте нам письмо по адресу techdoc@xsolla.com.
Скачать описание OpenAPI
Языки
Серверы
Mock server
https://xsolla.redocly.app/_mock/ru/api/digital-distribution-hub/
https://store.xsolla.com/api/
Операции
Операции

Получение игры на платформе для каталога

Запрос

Получение игры на платформе для каталога.

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

ID проекта.

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

Артикул предмета.

Пример: booster_mega_1
Запрос
localestring

Язык ответа. Используется двухбуквенное обозначение языка согласно стандарту ISO 639-1.

По умолчанию "en"
additional_fields[]Array of strings

Список дополнительных полей. Эти поля будут в ответе, если вы отправите их в запросе. Доступные поля: media_list, order, long_description.

countrystring

Страна для расчета региональных цен и ограничений для каталога. Используется двухбуквенное обозначение страны в верхнем регистре согласно стандарту ISO 3166-1 alpha-2. Если вы не укажете страну, она будет рассчитана на основе IP-адреса пользователя.

По умолчанию "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ru/api/digital-distribution-hub/v2/project/44056/items/game/key/sku/booster_mega_1?locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Ответы

Игра успешно получена.

Телоapplication/json
attributesArray of objects(Catalog_client-attributes-common)

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

По умолчанию []
descriptionstring

Описание предмета.

Пример: "Game description"
drm_namestring

Название DRM.

Пример: "Steam"
drm_skustring

Уникальный идентификатор DRM (артикул). Может содержать только строчные буквы латинского алфавита, цифры, точки, дефисы и подчеркивания.

Пример: "steam"
groupsArray of objects(Catalog_inline_response_200_groups)

Группы, к которым принадлежит предмет.

Пример: [{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}]
has_keysboolean

Если передано значение true, у игры на платформе есть ключи для продажи.

Пример: true
image_urlstring

URL изображения.

Пример: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
is_freeboolean

Если передано значение true, предмет бесплатный.

Пример: false
is_pre_orderboolean

Если передано значение true, игра на платформе доступна для предзаказа и дата выпуска еще не наступила.

Пример: true
namestring

Наименование предмета.

Пример: "Game name"
priceobject(Catalog_inline_response_200_price)

Стоимость предмета.

release_datestring

Дата выпуска игры на платформе в формате ISO 8601.

Пример: "2020-08-11T10:00:00+03:00"
skustring

Уникальный идентификатор предмета. Артикул может содержать только строчные буквы латинского алфавита, цифры, точки, дефисы и подчеркивания.

Пример: "game_1"
typestring

Тип предмета: game_key.

Пример: "game_key"
virtual_pricesArray of objects(Catalog_inline_response_200_virtual_prices)

Виртуальные цены.

Пример: []
Ответ
application/json
{ "attributes": { "$ref": "#/components/examples/client-attribute-game-horror/Catalog_value" }, "description": "Game description", "drm_name": "Steam", "drm_sku": "steam", "groups": [ {}, {} ], "has_keys": true, "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "is_free": false, "is_pre_order": true, "name": "Game name", "price": { "amount": "30.5", "amount_without_discount": "30.5", "currency": "USD" }, "release_date": "2020-08-11T10:00:00+03:00", "sku": "game_1", "type": "game_key", "virtual_prices": [] }

Получение игры для каталога

Запрос

Получение игры для каталога.

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

ID проекта.

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

Артикул предмета.

Пример: booster_mega_1
Запрос
localestring

Язык ответа. Используется двухбуквенное обозначение языка согласно стандарту ISO 639-1.

По умолчанию "en"
additional_fields[]Array of strings

Список дополнительных полей. Эти поля будут в ответе, если вы отправите их в запросе. Доступные поля: media_list, order, long_description.

countrystring

Страна для расчета региональных цен и ограничений для каталога. Используется двухбуквенное обозначение страны в верхнем регистре согласно стандарту ISO 3166-1 alpha-2. Если вы не укажете страну, она будет рассчитана на основе IP-адреса пользователя.

По умолчанию "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/ru/api/digital-distribution-hub/v2/project/44056/items/game/sku/booster_mega_1?locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

Ответы

Игра успешно получена.

Телоapplication/json
attributesArray of objects(Catalog_client-attributes)

Список атрибутов и их значений, соответствующих игре.

Обратите внимание. Эта часть ответа доступна только в том случае, если вы передадите `additional_fields[]=attributes` в параметре запроса.
По умолчанию []
descriptionstring

Описание предмета.

Пример: "Game description"
groupsArray of objects(Catalog_inline_response_200_groups)

Группы, к которым принадлежит предмет.

Пример: [{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}]
image_urlstring

URL изображения.

Пример: "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png"
namestring

Наименование предмета.

Пример: "Game name"
skustring

Уникальный идентификатор предмета. Артикул может содержать только строчные буквы латинского алфавита, цифры, точки, дефисы и подчеркивания.

Пример: "game_1"
typestring

Тип предмета: virtual_good/virtual_currency/bundle/physical_good/unit.

Пример: "unit"
unit_itemsArray of objects(Catalog_inline_response_200_unit_items)
Пример: [{"drm_name":"Steam","drm_sku":"steam","has_keys":true,"is_free":false,"is_pre_order":true,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"release_date":"2020-08-11T10:00:00+03:00","sku":"game_key_01","type":"game_key","virtual_prices":[]},{"drm_name":"Origin","drm_sku":"origin","has_keys":false,"is_free":false,"is_pre_order":false,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_key_02","type":"game_key","virtual_prices":[]}]
unit_typestring

Тип единицы: game.

Пример: "game"
Ответ
application/json
{ "attributes": { "$ref": "#/components/examples/client-attribute-game/Catalog_value" }, "description": "Game description", "groups": [ {}, {} ], "image_url": "https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png", "name": "Game name", "sku": "game_1", "type": "unit", "unit_items": [ {}, {} ], "unit_type": "game" }

Виртуальные предметы и валюта

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