保存设备信息

请求 URL: /saveDevice

请求方式: POST

请求头:

参数名 必选 类型 说明
Authorization 否 string 登录成功后的通讯令牌;未传时创建或获取临时账户

请求参数:

参数名 必选 类型 说明
appId 是 string App 唯一标识
udid 是 string 唯一设备 ID
deviceName 是 string 设备名称
systemName 是 string 系统名称
systemVersion 是 string 系统版本
language 是 string 当前使用的语言
timezone 是 string 时区,例如 Asia/Shanghai
appVersion 否 string 应用版本
vpn 否 bool 客户端是否开启 VPN,默认 false
inputLanguage 否 string 输入法语言,例如 zh-TW、zh-CN、zh-HK、zh
hasWxOrQQ 否 bool 设备是否安装微信或 QQ,默认 false
referrerDetails 否 object Google Play 安装来源信息
referrerDetails.installReferrer 否 string 安装来源参数,例如 utm_source=google-play&utm_medium=organic
referrerDetails.installBeginTimestampSeconds 否 int64 客户端记录的安装开始时间戳(秒)
referrerDetails.installBeginTimestampServerSeconds 否 int64 服务端记录的安装开始时间戳(秒)
referrerDetails.referrerClickTimestampSeconds 否 int64 客户端记录的来源点击时间戳(秒)
referrerDetails.referrerClickTimestampServerSeconds 否 int64 服务端记录的来源点击时间戳(秒)
referrerDetails.installVersion 否 string 首次安装的应用版本
referrerDetails.googlePlayInstantParam 否 bool 是否通过 Google Play Instant 启动

返回示例:

{
  "code": 200,
  "msg": "SUCCESS",
  "data": {
    "accessToken": "ea9a201564ef56df7c2b40570d241086",
    "userId": "A260122016769",
    "role": 7,
    "pageIndex": 0,
    "contactUs": "https://discord.gg/WNTyxU5mHk",
    "contactUsPrize": "https://discord.gg/WNTyxU5mHk",
    "contactEmail": "support@example.com",
    "reportLost": "https://forms.gle/6c5dh2JpfbEcZfST8",
    "appUpdate": {
      "content": "更新内容",
      "force": false,
      "link": "https://play.google.com/store/apps/details?id=com.example.app",
      "version": "1.0.9"
    },
    "control": {
      "isCheck": true
    },
    "packageFirst": {
      "id": 135,
      "price": 499,
      "amount": 200,
      "giftAmount": 0,
      "amountFestival": 0,
      "giftAmountFestival": 0,
      "giftAmountThird": 0,
      "raffleTicket": 0,
      "productId": "com.example.app.11",
      "limitBuy": 1,
      "role": 0,
      "roleDay": 0,
      "type": 0,
      "channel": 0,
      "originalPrice": 3326,
      "firstDouble": 0,
      "firstDoubleNo": 0,
      "createdAt": 1766963085,
      "updatedAt": 1767580069
    },
    "needReturn": true,
    "returnGrantAmount": 21,
    "config": {
      "msgCost": 5,
      "showScenario": false,
      "msgImgCost": 4,
      "videoCreatePrice": 14,
      "msgImgCount": 1,
      "msgVideoCountDay": 2,
      "advertiseConfig": {
        "switch": true,
        "interval": 50,
        "playCount": 5,
        "playPoint": [10, 30, 60]
      },
      "systemConfig": {
        "perspectiveSwitch": true,
        "literaryStyleSwitch": true
      },
      "strengthPrice": 2,
      "strengthPriceNew": 0.5,
      "strengthMax": 3,
      "strengthBuy": 5,
      "vipMsgTimes": 100,
      "userMemoryLen": 400
    },
    "roleFreeList": [13, 14]
  }
}

packageFirst 没有可购买的首充套餐时返回 null。advertiseConfig 和 systemConfig 取自 App 配置,未配置时可能返回 null。

返回参数说明:

参数名 类型 说明
code int 状态码
msg string 状态说明
data object 返回数据
data.accessToken string 通讯令牌
data.userId string 用户业务 ID
data.role uint8 用户角色编号
data.pageIndex uint8 是否强制弹窗:1 弹出,其他值不弹出
data.contactUs string 常规联系我们地址
data.contactUsPrize string 愿望商店联系我们地址
data.contactEmail string 客服邮箱
data.reportLost string 掉单反馈地址
data.appUpdate object 应用更新配置
data.appUpdate.force bool 是否强制更新
data.appUpdate.link string 更新跳转地址
data.appUpdate.version string 更新版本
data.appUpdate.content string 更新内容
data.control object 客户端控制配置
data.control.isCheck bool 审核控制开关
data.packageFirst object/null 当前可购买的首充套餐
data.packageFirst.id uint 套餐 ID
data.packageFirst.price uint 套餐价格,单位:分
data.packageFirst.amount uint 钻石数
data.packageFirst.giftAmount uint 额外赠送钻石数
data.packageFirst.amountFestival uint 节日活动钻石数
data.packageFirst.giftAmountFestival uint 节日活动额外赠送钻石数
data.packageFirst.giftAmountThird uint 三方支付额外赠送钻石数
data.packageFirst.raffleTicket uint 抽奖券数量
data.packageFirst.productId string 内购产品 ID
data.packageFirst.limitBuy uint8 是否限购:1 是,0 否
data.packageFirst.role uint8 套餐对应角色编号
data.packageFirst.roleDay uint 角色/订阅有效天数
data.packageFirst.type uint8 标签:0 无、1 First recharge、2 Recommend、3 Hot、4 Best Deal
data.packageFirst.channel uint8 渠道:1 Apple、2 Pay、3 Stripe、4 V5Pay、5 Waffo
data.packageFirst.originalPrice uint 原价,单位:分
data.packageFirst.firstDouble uint 首次购买额外赠送数
data.packageFirst.firstDoubleNo uint 非首次购买额外赠送数
data.packageFirst.createdAt int64 创建时间戳(秒)
data.packageFirst.updatedAt int64 更新时间戳(秒)
data.needReturn bool 是否为满足条件的回归用户
data.returnGrantAmount int 回归赠送钻石数
data.config object 全局配置
data.config.msgCost int 发消息消耗钻石数
data.config.showScenario bool 是否展示场景功能;当前固定为 false
data.config.msgImgCost int 消息生图价格
data.config.videoCreatePrice int 消息生视频价格
data.config.msgImgCount int 设备累计生图次数
data.config.msgVideoCountDay int 设备当日生视频次数
data.config.advertiseConfig object/null 广告配置
data.config.advertiseConfig.switch bool 广告开关
data.config.advertiseConfig.playCount int 广告播放次数
data.config.advertiseConfig.playPoint int[] 广告播放节点(分钟)
data.config.advertiseConfig.interval int 广告播放间隔(秒)
data.config.systemConfig object/null 系统设置
data.config.systemConfig.perspectiveSwitch bool 聊天视角开关
data.config.systemConfig.literaryStyleSwitch bool 文风开关
data.config.strengthPrice uint 旧体力售价(钻石),保留用于兼容旧版客户端
data.config.strengthPriceNew number 新体力售价(钻石),最多两位小数;服务端购买体力时按此字段计费
data.config.strengthMax uint 体力上限
data.config.strengthBuy uint 单次购买体力数
data.config.vipMsgTimes uint VIP 角色不限发送时的消息次数配置
data.config.userMemoryLen int 当前用户权益对应的角色记忆字符长度
data.roleFreeList uint[] 免费角色分类 ID 列表;角色卡的 pid 在此列表中即为免费角色

备注:

  • 审核用户的 control.isCheck 和 appUpdate.force 会被置为 false,appUpdate.version 会被置为 1.0.0。

错误码:

状态码 说明
510 系统错误
800 参数错误
2021 © Live all right reserved,powered by Gitbook该文件修订时间: 2026-10-21 18:24:40

results matching ""

    No results matching ""