API 参考

Xsolla 验证

POST/v1/xsolla/verify

用这个 API 密钥上设置的商户 ID、项目 ID 和 Xsolla API 密钥(控制台 → API 密钥 → 编辑 → Xsolla 订阅验证),查询一个 Xsolla 用户或一个订阅是否在订阅中。结果直接来自 Xsolla;网关不收费,解锁什么由你的 App 决定。查到的订阅缓存一分钟。

#请求参数

  • user_idstring可选

    你的 App 写进 Xsolla 支付令牌的 user.id。不传 subscription_id 时必填。

  • subscription_idinteger可选

    Xsolla 订阅 ID(如果 App 拿得到)。和 user_id 一起传时,订阅必须属于该用户。

subscribed 表示该用户在这个项目里有过真实订阅(包括已取消的);active 只在当前可用时为 true。关闭自动续费后(state 为 non_renewing),订阅在 expiry_time 之前仍然有效。in_trial 表示还没扣过款。没有订阅的用户返回 subscribed false、state not_found,状态码 200。用户有多个订阅时,返回到期最晚的那个生效订阅。

每次调用(包括缓存结果和失败)都会出现在控制台 → 请求日志里,记在发起调用的密钥上,是一条免费的 xsolla-verify 记录。这些记录不计入请求次数。 在 App 里接入 Xsolla 订阅 →

#相关错误码

  • 400 invalid_request请求体不是 JSON,或 user_id 和 subscription_id 都没传。
  • 400 xsolla_not_configured这个 API 密钥还没有设置 Xsolla 商户 ID、项目 ID 和 API 密钥。
  • 401bearer token 无效或缺失。
  • 429每个密钥的验证次数上限:默认每分钟 120 次,可联系客服为单个密钥调高。请按 Retry-After 等待,并沿用上次的结果。
  • 502 xsolla_credentials_invalidXsolla 拒绝了已保存的 API 密钥。请在密钥上重新填写。
  • 503 xsolla_unavailableXsolla 没有及时回应。请过几秒重试。

完整错误码表 →

#请求示例

curl https://www.aisplice.store/v1/xsolla/verify \
  -H "Authorization: Bearer sk-YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"user_id": "USER_ID_IN_THE_PAYMENT_TOKEN"}'

#响应

response.json
{
  "project_id": 273204,
  "subscribed": true,
  "active": true,
  "in_trial": false,
  "state": "active",
  "subscription_id": 249579,
  "user_id": "user-8f2c",
  "plan_id": 601,
  "plan_external_id": "weekly",
  "expiry_time": 1793000000,
  "auto_renewing": true,
  "checked_at": 1790400000
}

还是没解决?

把请求 ID 或报错信息发给我们,我们来查。