Skip to main content

验证手机验证

端点

PUT https://api.verifik.co/v2/phone-validations

确认用户收到的 OTP。Verifik 会查找该手机号最新的 已发送(且未过期)手机验证记录 — 包括 手动 / Smart Tools 记录与项目流程记录。

与发送配对

独立 OTP 通过 POST /v2/phone-validations/manual 创建。App Registration OTP 使用 POST /v2/phone-validations/app-registration

请求头

名称
Content-Typeapplication/json
AuthorizationBearer {YOUR_ACCESS_TOKEN}

Body 参数

参数类型必需说明
phonestring与发送 OTP 时相同的国内号码。
countryCodestring+ 开头的拨号代码。
otpnumber用户收到的数字验证码。
phoneGatewaystringsmswhatsapp — 在两个渠道都使用过时用于缩小查找范围。
projectstring基于流程记录的可选项目筛选。
projectFlowstring可选的项目流程筛选(可用时优先)。

请求示例

curl -X PUT "https://api.verifik.co/v2/phone-validations" \
-H "Authorization: Bearer YOUR_ACCESS_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"phone": "3001234567",
"countryCode": "+57",
"otp": 123456,
"phoneGateway": "whatsapp"
}'

成功响应

{
"data": {
"_id": "66f0a1b2c3d4e5f678901234",
"status": "validated",
"countryCode": "+57",
"phone": "3001234567",
"phoneGateway": "whatsapp",
"source": "manual",
"validatedAt": "2026-07-29T22:40:00.000Z"
}
}

OTP 有效期

待验证的 OTP 自上次成功发送/重发起有效 10 分钟(创建响应中的 expiresAt)。过期后,此端点返回 412 phoneValidation_has_expired。在要求用户再次尝试之前,请发送新的 OTP(遵守约 2 分钟的重发冷却,或在手动创建时使用 force: true)。

OTP 尝试次数

目前 没有服务端尝试次数限制。错误验证码会返回 403 otp_does_not_match,直到记录过期或发送新的 OTP。如有需要,请在客户端强制执行锁定或尝试上限。

常见错误

状态消息何时
403otp_does_not_match验证码与待验证 OTP 不匹配。
412phoneValidation_has_expired待验证 OTP 的 TTL(约 10 分钟)已过。
409otp_send_failed此手机号的最新记录发送失败(与过期不同)。
409phone_validation_already_validatedOTP 已验证过。
404phone_validation_not_found未找到匹配此手机号的手机验证。
409MissingParameter缺少必需的 body 字段。

相关