跳转到内容

概述

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

LiveOps运营API是一套工具包,通过促销活动和个性化优惠推动玩家持续互动。

通过该API可管理以下功能:

  • 促销活动 — 创建和管理优惠券、促销码、折扣及奖励活动。
  • 个性化 — 指定商品目录显示和促销活动应用条件,仅面向特定授权用户。
  • 促销活动限制 — 设置用户使用促销活动的次数限制,并配置限制的定期重置。
  • 奖励链和奖励积分 — 配置与奖励积分累积关联的奖励进度。
  • 每日奖励链 — 设置循环每日奖励,激励玩家定期登录。
  • 优惠链 — 创建阶梯式连续购买优惠,每步提供不同定价和免费奖励选项。
  • 追加销售 —向用户提供购买超值商品的销售方式。

API调用

API分为以下组别:

  • Admin — 用于创建、更新、激活和删除营销活动及奖励链配置。通过基本认证方式验证身份,需使用您的商户或项目凭据。
  • Client — 用于检索可用促销活动、获取活跃奖励链、兑换码,以及代表最终用户(已完成身份认证)领取奖励。通过用户JWT进行身份认证。
下载 OpenAPI 描述
语言
服务器
https://store.xsolla.com/api/
Mock server
https://xsolla.redocly.app/_mock/zh/api/liveops/
操作

优惠券

此API让您可以管理优惠券。

操作

促销码

此API让您可以管理促销码。

操作

获取指定用户的促销码限制Server-sideAdmin

请求

获取指定用户可以使用促销码的剩余次数。

用户限制API允许您限制用户可以使用促销码的次数。要配置用户限制数本身,请前往“管理”部分:

安全
basicAuth
路径
project_idinteger必需

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

示例: 44056
external_idinteger必需

促销活动外部ID。项目内的唯一促销活动标识符。

示例: coupon_44056_1
查询
user_external_idstring必需

用户外部ID

示例: user_external_id=d342dad2-9d59-11e9-a384-42010aa8003f
curl -i -X GET \
  -u <username>:<password> \
  'https://store.xsolla.com/api/v2/project/44056/admin/user/limit/promocode/external_id/coupon_44056_1?user_external_id=d342dad2-9d59-11e9-a384-42010aa8003f'

响应

成功收到用户的促销码限制。

正文application/json
per_userobject
响应
application/json
{ "per_user": { "available": 9, "total": 10 } }

获取促销码奖励Client-side

请求

通过促销码获取奖励。 可用于允许用户从众多商品中选择一个作为奖励。 通常情况下,如果优惠码包含游戏作为奖励(type=unit),则为选择一个DRM。

安全
XsollaLoginUserJWT
路径
project_idinteger必需

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

示例: 44056
promocode_codestring[ 1 .. 128 ] characters必需

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

示例: SO6rew99j9
curl -i -X GET \
  https://store.xsolla.com/api/v2/project/44056/promocode/code/SO6rew99j9/rewards \
  -H 'Authorization: Bearer <YOUR_JWT_HERE>'

响应

已成功接收促销码奖励列表。

正文application/json
bonusArray of objects(Promotions_200-promo-code-bonus-reward)
discountobject or null(Promotions_200-coupon-discount-reward)

百分比折扣。 购物车价格将按照此百分比打折,然后四舍五入到小数点后两位。

discounted_itemsArray of objects or null(Promotions_discounted_items)

通过促销码打折的商品列表。

is_selectableboolean

如果为true,则用户应在兑换促销码之前选择奖励。

响应
application/json
{ "bonus": [ {}, {} ], "discount": { "percent": "10.00" }, "discounted_items": [ {} ], "is_selectable": true }

请求

兑换促销码活动的促销码。 兑换促销码后,用户将获得免费商品和/或购物车和/或特定商品的价格折扣。

安全
AuthForCart
路径
project_idinteger必需

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

示例: 44056
正文application/json
cartobject or null
coupon_codestring[ 1 .. 128 ] characters

唯一促销码代码。包含字母和数字。

默认值 "SUMMER2021"
示例: "SUMMER2021"
selected_unit_itemsobject(Promotions_selected_unit_items)

用户选择的奖励。 对象键是单位的SKU,值是单位中一个商品的SKU。

示例: {"game_1":"game_1_steam","game_2":"game_2_playstation"}
curl -i -X POST \
  https://store.xsolla.com/api/v2/project/44056/promocode/redeem \
  -H 'Authorization: Bearer <YOUR_TOKEN_HERE>' \
  -H 'Content-Type: application/json' \
  -d '{
    "cart": {
      "id": "current"
    },
    "coupon_code": "SUMMER2021",
    "selected_unit_items": {
      "game_1": "game_1_steam",
      "game_2": "game_2_playstation"
    }
  }'

响应

促销码已成功兑换。

正文application/json
cart_idstring

购物车ID。

示例: "cart_id"
is_freeboolean(value-is_free)

如果为true,则该商品为免费。

默认值 false
示例: false
itemsArray of objects
示例: [{"attributes":[],"can_be_bought":{"$ref":"../schemas/Can_be_bought.yaml"},"description":"Take it, take it all! All of Xsolla's riches in one Mega Booster.","groups":[{"external_id":"powerups","name":"Power Ups"}],"image_url":"https://cdn.xsolla.net/img/misc/images/e9f2f4a634bc96ea03b5d5ceadd7c55f.png","is_free":false,"limits":{"$ref":"../schemas/Catalog_item_limits.yaml"},"name":"Xsolla Booster Mega","periods":{"$ref":"../schemas/item-periods.yaml"},"price":{"amount":"50.0000000000000000","amount_without_discount":"100.0000000000000000","currency":"USD"},"promotions":{"$ref":"../schemas/Catalog_item_promotions.yaml"},"quantity":123,"sku":"com.xsolla.booster_mega_1","type":"virtual_good","virtual_item_type":"consumable","virtual_prices":[],"vp_rewards":{"$ref":"../schemas/reward-chain-client/client-item-value-point-reward.yaml"}}]
priceobject or null

购物车价格。

示例: {"amount":"6150.0000000000000000","amount_without_discount":"6150.0000000000000000","currency":"USD"}
rewardsobject(Promo_code_rewards)
响应
application/json
{ "cart_id": "cart_id", "is_free": false, "items": [ {}, {} ], "price": { "amount": "6150.0000000000000000", "amount_without_discount": "12300.0000000000000000", "currency": "USD" }, "rewards": { "bonus": [], "discount": {}, "discounted_items": [], "is_selectable": false } }

特别目录优惠

此API让您可以管理特别目录优惠活动。

操作

折扣

此API让您可以管理折扣促销活动。

操作

奖励

此API让您可以管理奖励促销活动。

操作

个性化目录

此API可让您针对用户属性指定规则。如果用户满足具体规则的所有条件,则会显示个性化商品。

有关个性化促销活动的信息,请参阅促销活动部分

要在购买前传递属性,您可以使用艾克索拉Login API或在使Pay Station API生成令牌时将它们传入user.attributes属性

操作
操作
操作
操作
操作
操作
操作
操作
操作
操作
操作