跳转到内容

概述

  • 版本: 2.0.0
  • 服务器https://store.xsolla.com/api
  • 通过邮件联系我们
  • 联系URL: https://xsolla.com/
  • 必需的TLS版本: 1.2

商品目录API支持在艾克索拉侧配置游戏内商品目录,并在您的商店中向用户展示目录内容。

通过该API可管理以下目录实体:

  • 虚拟物品 — 游戏内物品,例如武器、皮肤、增益道具。
  • 虚拟货币 — 用于购买虚拟商品的虚拟货币。
  • 虚拟货币套餐 — 预定义的虚拟货币捆绑包。
  • 捆绑包 — 虚拟物品、货币或游戏激活码的组合套餐,以单个SKU形式出售。
  • 游戏密钥 — 适用于Steam等平台或其他DRM提供商分发的游戏和DLC激活码。
  • — 用于在目录中组织和排序商品的逻辑分组。

API调用

API分为以下组别:

  • Admin — 用于创建、更新、删除和配置目录商品及分组的调用。通过基本认证方式验证身份,需使用您的商户或项目凭据。不适用于商店前端调用。
  • Catalog — 用于检索商品并构建面向最终用户的自定义商店前端。专为高负载场景设计。支持可选的用户JWT授权,可返回个性化数据,例如用户特定限制和当前进行中的促销活动。
下载 OpenAPI 描述
语言
服务器
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/zh/api/catalog/
操作
操作

获取商品组列表Client-side

请求

获取用于构建目录的商品组列表。

路径
project_idinteger必需

项目ID。您可以在您的发布商帐户项目名称旁边找到。

示例: 44056
查询
promo_codestring[ 1 .. 128 ] characters

区分大小写的唯一券码。包含字母和数字。

示例: promo_code=WINTER2021
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/groups?promo_code=WINTER2021'

响应

已成功接收组列表。

正文application/json
groupsArray of objects
示例: [{"children":[{"children":[{"children":[],"description":"Accessory","external_id":"accessory","image_url":null,"level":2,"name":"Accessory","order":1,"parent_external_id":"background"}],"description":"Background description","external_id":"background","image_url":null,"level":1,"name":"Background","order":1,"parent_external_id":"hair"}],"description":"Hair description","external_id":"hair","image_url":null,"level":0,"name":"Hair","order":1,"parent_external_id":null},{"children":[],"description":"Super description","external_id":"group_external_id","image_url":null,"level":0,"name":"Super","order":1,"parent_external_id":null}]
响应
application/json
{ "groups": [ {}, {}, {}, {}, {}, {}, {}, {} ] }

获取虚拟货币列表Client-side

请求

获取用于构建目录的虚拟货币列表。

注意:

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

注:

使用商品目录API调用无需授权,但若需获取个性化目录,必须在Authorization头中传入用户JWT。
安全
XsollaLoginUserJWT
路径
project_idinteger必需

项目ID。您可以在您的发布商帐户项目名称旁边找到。

示例: 44056
查询
limitinteger>= 1

页面上元素数量的限制。

示例: limit=50
offsetinteger>= 0

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

示例: offset=0
localestring

响应语言。按照ISO 639-1规定使用两个小写字母的语言代码。

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

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

枚举"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2标准下的两个大写字母的国家/地区代码。 请查看文档详细了解艾克索拉支持的国家/地区国家/地区的判断流程

示例: country=US
promo_codestring[ 1 .. 128 ] characters

区分大小写的唯一券码。包含字母和数字。

示例: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

显示用户不可用的时效性商品。此类商品的有效期尚未开始或已过期。

默认值 0
示例: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/virtual_currency?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

响应

虚拟货币列表已成功接收。

正文application/json
has_moreboolean(Pagination_has-more)

用作指示还有更多页面。

示例: true
itemsArray of objects(Virtual-Items-Currency_virtual-currency)
响应
application/json
{ "has_more": false, "items": [ {}, {}, {} ] }

获取虚拟货币套餐列表Client-side

请求

获取用于构建目录的虚拟货币套餐列表。

注意:

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

注:

使用商品目录API调用无需授权,但若需获取个性化目录,必须在Authorization头中传入用户JWT。
安全
XsollaLoginUserJWT
路径
project_idinteger必需

项目ID。您可以在您的发布商帐户项目名称旁边找到。

示例: 44056
查询
limitinteger>= 1

页面上元素数量的限制。

示例: limit=50
offsetinteger>= 0

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

示例: offset=0
localestring

响应语言。按照ISO 639-1规定使用两个小写字母的语言代码。

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

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

枚举"media_list""order""long_description""custom_attributes""item_order_in_group"
countrystring

ISO 3166-1 alpha-2标准下的两个大写字母的国家/地区代码。 请查看文档详细了解艾克索拉支持的国家/地区国家/地区的判断流程

示例: country=US
promo_codestring[ 1 .. 128 ] characters

区分大小写的唯一券码。包含字母和数字。

示例: promo_code=WINTER2021
show_inactive_time_limited_itemsinteger

显示用户不可用的时效性商品。此类商品的有效期尚未开始或已过期。

默认值 0
示例: show_inactive_time_limited_items=1
curl -i -X GET \
  'https://store.xsolla.com/api/v2/project/44056/items/virtual_currency/package?limit=50&offset=0&locale=en&additional_fields%5B%5D=media_list&country=US&promo_code=WINTER2021&show_inactive_time_limited_items=1' \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

响应

已成功收到虚拟货币套餐列表。

正文application/json
has_moreboolean(Pagination_has-more)

用作指示还有更多页面。

示例: true
itemsArray of objects(Virtual-Items-Currency_virtual-currency-package)
响应
application/json
{ "has_more": false, "items": [ {}, {} ] }
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作

目录

本API允许获取任意类型的可售商品或指定商品。

操作
操作
操作