LiveOps API (2.0.0)
- 版本: 2.0.0
- 服务器:
https://store.xsolla.com/api - 通过邮件联系我们
- 联系URL: https://xsolla.com/
- 必需的TLS版本: 1.2
LiveOps运营API是一套工具包,通过促销活动和个性化优惠推动玩家持续互动。
通过该API可管理以下功能:
- 促销活动 — 创建和管理优惠券、促销码、折扣及奖励活动。
- 个性化 — 指定商品目录显示和促销活动应用条件,仅面向特定授权用户。
- 促销活动限制 — 设置用户使用促销活动的次数限制,并配置限制的定期重置。
- 奖励链和奖励积分 — 配置与奖励积分累积关联的奖励进度。
- 每日奖励链 — 设置循环每日奖励,激励玩家定期登录。
- 优惠链 — 创建阶梯式连续购买优惠,每步提供不同定价和免费奖励选项。
- 追加销售 —向用户提供购买超值商品的销售方式。
API分为以下组别:
Admin — 用于创建、更新、激活和删除营销活动及奖励链配置。通过基本认证方式验证身份,需使用您的商户或项目凭据。Client — 用于检索可用促销活动、获取活跃奖励链、兑换码,以及代表最终用户(已完成身份认证)领取奖励。通过用户JWT进行身份认证。
个性化目录
此API可让您针对用户属性指定规则。如果用户满足具体规则的所有条件,则会显示个性化商品。
有关个性化促销活动的信息,请参阅促销活动部分。
要在购买前传递属性,您可以使用艾克索拉Login API或在使Pay Station API生成令牌时将它们传入user.attributes属性。
用户属性验证条件。 根据用户属性是否满足所有指定条件来确定优惠链可用性。
优惠链结束日期。可为null,若date_end为null则无时间限制。
包含本地化商品描述的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的区域设置代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
包含本地化商品描述的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的区域设置代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
优惠链是否对所有用户可见:
- 如为
true,则无论用户的认证状态或属性如何,优惠链始终显示。 - 如为
false,则仅在未找到个性化优惠链时才显示该优惠链。例如,当用户未认证或其属性与任何个性化优惠链都不匹配时。
仅适用于存在个性化奖励链的前提,并在未传递attribute_conditions数组时使用。
包含商品本地化名称的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的语言代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
包含商品本地化名称的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的语言代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
优惠链的重置周期。
优惠链的重置周期。
是否为免费步骤:
- 如为
true,需通过领取免费优惠链步骤调用来领取。 - 如为
false,需通过为付费优惠链步骤创建订单调用来购买。
- https://store.xsolla.com/api/v2/project/{project_id}/admin/offer_chain
- Mock serverhttps://xsolla.redocly.app/_mock/zh/api/liveops/v2/project/{project_id}/admin/offer_chain
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X POST \
-u <username>:<password> \
https://store.xsolla.com/api/v2/project/44056/admin/offer_chain \
-H 'Content-Type: application/json' \
-d '{
"date_end": null,
"date_start": "2023-04-15T18:16:00+05:00",
"description": {
"de": "Eine kurze Beschreibung einer regulären Angebotskette",
"en": "A short description of a regular offer chain",
"fr": "Une brève description d'\''une chaîne d'\''offres régulière",
"it": "Una breve descrizione di una catena di offerte regolare",
"ru": "Краткое описание обычной цепочки предложений"
},
"is_always_visible": true,
"is_enabled": true,
"name": {
"de": "Neue Angebotskette",
"en": "New offer chain",
"fr": "Nouvelle chaîne d'\''offres",
"it": "Nuova catena di offerte",
"ru": "Новая цепочка предложений"
},
"order": 4,
"recurrent_schedule": null,
"steps": [
{
"is_free": false,
"items": [
{
"quantity": 2,
"sku": "chain_step_1_paid_bundle_sku"
}
],
"step_number": 1
},
{
"is_free": true,
"items": [
{
"quantity": 1,
"sku": "chain_step_2_free_virtual_good_sku"
}
],
"step_number": 2
},
{
"is_free": false,
"items": [
{
"quantity": 5,
"sku": "chain_step_3_paid_virtual_currency_package_sku"
}
],
"step_number": 3
},
{
"is_free": true,
"items": [
{
"quantity": 1,
"sku": "chain_step_4_free_bundle_sku"
}
],
"step_number": 4
}
]
}'- https://store.xsolla.com/api/v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}
- Mock serverhttps://xsolla.redocly.app/_mock/zh/api/liveops/v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X DELETE \
-u <username>:<password> \
https://store.xsolla.com/api/v2/project/44056/admin/offer_chain/id/101- https://store.xsolla.com/api/v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}
- Mock serverhttps://xsolla.redocly.app/_mock/zh/api/liveops/v2/project/{project_id}/admin/offer_chain/id/{offer_chain_id}
- curl
- JavaScript
- Node.js
- Python
- Java
- C#
- PHP
- Go
- Ruby
- R
- Payload
curl -i -X GET \
-u <username>:<password> \
https://store.xsolla.com/api/v2/project/44056/admin/offer_chain/id/101优惠链数据获取成功。
用户属性验证条件。 根据用户属性是否满足所有指定条件来确定优惠链可用性。
优惠链结束日期。可为null,若date_end为null则无时间限制。
包含本地化商品描述的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的区域设置代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
包含本地化商品描述的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的区域设置代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
优惠链是否对所有用户可见:
- 如为
true,则无论用户的认证状态或属性如何,优惠链始终显示。 - 如为
false,则仅在未找到个性化优惠链时才显示该优惠链。例如,当用户未认证或其属性与任何个性化优惠链都不匹配时。
仅适用于存在个性化奖励链的前提,并在未传递attribute_conditions数组时使用。
包含商品本地化名称的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的语言代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
包含商品本地化名称的对象。值接受以下两种格式之一:两个小写字母的语言代码(例如,en)或五个字符的语言代码(例如,en-US)。虽然两种格式都可作为输入接受,但响应会返回两个小写字母的语言代码。当为同一种语言提供了两种输入时(例如:en和en-US),将存储最后提供的值。您可以在文档中找到支持语言的完整列表。
{ "attribute_conditions": [ { … }, { … }, { … } ], "date_end": "2025-04-25T18:16:00+05:00", "date_start": "2023-04-15T18:16:00+05:00", "description": { "de": "Personalisierte Angebotskette mit Benutzerattributbedingungen - für Elfen der Stufe 10 und höher, die Stufe 10 spätestens am 2026-01-01 00:00:00 erreicht haben, einschließlich", "en": "Personalized offer chain with user attribute conditions - for level 10 and above elves who reached level 10 no later than 2026-01-01 00:00:00, inclusive", "fr": "Chaîne d'offres personnalisée avec des conditions d'attribut utilisateur - pour les elfes de niveau 10 et plus qui ont atteint le niveau 10 au plus tard le 2026-01-01 00:00:00, inclus", "it": "Catena di offerte personalizzata con condizioni di attributo utente - per elfi di livello 10 e superiore che hanno raggiunto il livello 10 non più tardi del 2026-01-01 00:00:00, inclusi", "ru": "Персонализированная цепочка предложений - для эльфов 10 уровня и выше, достигших 10 уровня не позднее 2026-01-01 00:00:00 включительно" }, "id": 3, "is_always_visible": false, "is_enabled": true, "name": { "de": "Angebotskette", "en": "Offer chain", "fr": "Chaîne d'offres", "it": "Catena di offerte", "ru": "Цепочка" }, "order": 1, "recurrent_schedule": null, "steps": [ { … }, { … }, { … } ] }