1. 首页
  2. API 文档
  3. Bot 管理
  4. check_sms

check_sms

  • 发布于 2026-08-16
  • 12 次阅读

提交短信安全验证,并继续登录。

verify_type 需要与 get_sms 时一致:

verify_type 名称 提交内容
4 接收短信 提交用户收到的验证码 code
3 发送短信 不提交 code,回查服务端是否已收到用户发出的短信

调用

const self_id = 123456789 // 正在登录的 Bot QQ 号

// 接收短信:提交用户收到的验证码
const result = await api.check_sms(self_id, 4, sms.sign, code)

// 发送短信:用户发完短信后回查,不需要 code
const result = await api.check_sms(self_id, 3, sms.sign)

参数

参数 类型 必填 说明
self_id number 正在登录的 Bot QQ 号
verify_type number 短信验证类型,4 接收短信,3 发送短信
sign string get_sms 新返回的 sign
code string 视类型 verify_type4 时必填;为 3 时不需要传

verify_type 必填,且只接受 34,缺失或取值不合法会直接报错。

返回值

校验通过:服务端会自动继续 NTLogin Type 2,返回结构与 login_account 一致。

校验未通过:返回 CheckSMS 的服务端原始响应,不作包装。登录会话保留,可以用同一个 sign 重试。

{
  result: {
    state: 2,
    code: 3,
    prompt: '未收到短信,原因可能是:未使用密保手机发送;短信内容不正确;运营商不稳定。',
  },
}

判断方式:出现 result.state 字段即为未通过,result.prompt 是可直接展示给用户的原因。

verify_type 为 3 时需要留出发送时间

用户发出短信后,服务端可能要几秒才能收到。此时 result.state2result.code3,含义是「尚未收到」而非「验证失败」,属于可重试状态,应提示用户确认已用密保手机发送后再调用一次。

完整流程见Bot 登录流程