跳转到内容

Digital Distribution Hub (1.0.0)

概览

Digital Distribution Hub是一个全新的艾克索拉解决方案,旨在通过推送支付(Push payments)技术和电子商务来联结数字与现金支付。

本参考指南合并介绍了用于以下两个艾克索拉产品的API端点:游戏内商店支付中心。基础URL有两个:

  • https://store.xsolla.com/api ,用于常用目录购物车订单组。
  • https://ps.xsolla.com,用于通知组。

目录组中的API端点不需要授权。

要使用购物车订单组中的操作,需通过创建用户令牌来生成一个令牌。

注:

本参考展示的是未来可能的API设计,并非已经完全运作的界面。目前只支持尝试目录通知组端点。如想向我们提供反馈,请发送邮件至techdoc@xsolla.com
下载 OpenAPI 描述
语言
服务器
Mock server
https://xsolla.redocly.app/_mock/zh/api/digital-distribution-hub/
https://store.xsolla.com/api/
操作
操作

请求

获取可用DRM的列表。

安全
AuthForClient
路径
project_idinteger必需

项目ID。

示例: 44056
curl -i -X GET \
  https://xsolla.redocly.app/_mock/zh/api/digital-distribution-hub/v2/project/44056/items/game/drm \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

响应

已成功接收DRM列表。

正文application/json
drmArray of objects(Catalog_inline_response_200_4_drm)
示例: [{"drm_id":1,"image":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","link":"https://support.steampowered.com","name":"Steam","redeem_instruction_link":"https://support.steampowered.com","sku":"steam"},{"drm_id":2,"image":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Playstation","redeem_instruction_link":"https://support.us.playstation.com","sku":"playstation"}]
响应
application/json
{ "drm": [ {}, {} ] }

按指定组获取游戏列表

请求

从指定组中获取游戏列表以构建目录。

注意:所有项目对于可以在响应中获得的商品数量均都限制。默认值和最大值是每个响应 50项。要逐页获取更多数据,请使用limitoffset字段。
安全
AuthForClient
路径
project_idinteger必需

项目ID。

示例: 44056
external_idstring必需

组外部ID。

默认值 "all"
查询
limitinteger

页面上元素数量的限制。

示例: limit=50
offsetinteger

元素编号,从该元素开始生成列表(从0开始数)。

示例: offset=0
localestring

响应语言。符合ISO 639-1标准的两个小写字母的语言代码。

默认值 "en"
additional_fields[]Array of strings

附加字段列表。如果在请求中发送这些字段,则它们将包含在响应中。可用字段media_listorderlong_description

countrystring

对于该目录要计算区域价格和限制的国家/地区。符合ISO 3166-1 alpha-2的两个大写字母的国家/地区代码。如果未明确指定国家/地区,则将根据用户的IP地址进行计算。

默认值 "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/zh/api/digital-distribution-hub/v2/project/44056/items/game/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

响应

游戏列表已成功接收。

正文application/json
itemsArray of objects(Catalog_inline_response_200_items)
示例: [{"attributes":{"$ref":"#/components/examples/client-attribute-game/Catalog_value"},"description":"Game description","groups":[{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}],"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Game name","sku":"game_1","type":"unit","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_type":"game"},{"attributes":[{"external_id":"OS","name":"OS","values":[{"external_id":"9d5c5efb7c0f00a00fe4e3583f1215b0050bc723","value":"Windows"}]}],"description":"Game description","groups":[{"external_id":"all","name":"All games"}],"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","name":"Game name","sku":"game_2","type":"unit","unit_items":[{"drm_name":"Steam","drm_sku":"steam","has_keys":false,"is_free":false,"is_pre_order":false,"price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_key_01","type":"game_key","virtual_prices":[]}],"unit_type":"game"}]
响应
application/json
{ "items": [ {}, {} ] }

按指定组获取游戏列表

请求

从指定组中获取游戏密钥列表以构建目录。

注意:所有项目对于可以在响应中获得的商品数量均都限制。默认值和最大值是每个响应50个商品。要逐页获取更多数据,请使用limitoffset字段。
安全
AuthForClient
路径
project_idinteger必需

项目ID。

示例: 44056
external_idstring必需

组外部ID。

默认值 "all"
查询
limitinteger

页面上元素数量的限制。

示例: limit=50
offsetinteger

元素编号,从该元素开始生成列表(从0开始数)。

示例: offset=0
localestring

响应语言。符合ISO 639-1标准的两个小写字母的语言代码。

默认值 "en"
additional_fields[]Array of strings

附加字段列表。如果在请求中发送这些字段,则它们将包含在响应中。可用字段media_listorderlong_description

countrystring

对于该目录要计算区域价格和限制的国家/地区。符合ISO 3166-1 alpha-2的两个大写字母的国家/地区代码。如果未明确指定国家/地区,则将根据用户的IP地址进行计算。

默认值 "US"
curl -i -X GET \
  'https://xsolla.redocly.app/_mock/zh/api/digital-distribution-hub/v2/project/44056/items/game/key/group/{external_id}?limit=50&offset=0&locale=en&additional_fields%5B%5D=string&country=US' \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>'

响应

已成功接收游戏列表。

正文application/json
itemsArray of objects(Catalog_inline_response_200_3_items)
示例: [{"attributes":{"$ref":"#/components/examples/client-attribute-game-horror/Catalog_value"},"description":"Game description","drm_name":"Steam","drm_sku":"steam","groups":[{"external_id":"all","name":"All games"},{"external_id":"Xsolla","name":"Xsolla games"}],"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":[]},{"attributes":{"$ref":"#/components/examples/client-attribute-game-horror/Catalog_value"},"description":"Game description","drm_name":"Steam","drm_sku":"steam","groups":[{"external_id":"all","name":"All games"}],"has_keys":true,"image_url":"https://cdn.xsolla.net/img/misc/images/b79342cdf24f0f8557b63c87e8326e62.png","is_free":false,"is_pre_order":false,"name":"Game name","price":{"amount":"30.5","amount_without_discount":"30.5","currency":"USD"},"sku":"game_2","type":"game_key","virtual_prices":[]}]
响应
application/json
{ "items": [ {}, {} ] }
操作
操作
操作
操作
操作