跳转到正文
OmniChannels.ai

用于验证码的短信 OTP API

从您的后端向 BroadNet REST API 发起一次 HTTPS 请求即可发送一次性验证码。验证码由您的应用生成和校验;我们通过运营商直连线路,使用已报备 Sender ID 送达,并将每个状态回传到您的 webhook。

POST /sms/sendSmscURL
curl -X POST https://api.broadnet.me/sms/sendSms \
  -H "Authorization: Bearer $BROADNET_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "senderId": "OmniDemo",
    "destinationNumber": "971500000000",
    "message": "482913 is your OmniDemo code. It expires in 5 minutes. Do not share it.",
    "messageType": "TEXT",
    "campaignName": "login-otp"
  }'

# 200 OK
2603121407537573731

使用短信 API 发送验证码。token、Sender ID 和号码均为占位符。

简短回答

更新于

使用 OmniChannels.ai 发送短信验证码时,由您的后端生成验证码,并携带 bearer token、Sender ID、号码和消息内容,调用 https://api.broadnet.me 上的 POST /sms/sendSms。API 返回消息 ID,送达状态通过 webhook 回传。支持 Unicode 与阿拉伯语,WhatsApp 或语音可作为回退渠道。

短信验证码 API 为开发者提供什么

您的代码负责什么,API 负责什么

职责清晰才能保证验证安全:验证码归您的系统,送达归平台。

项目详情
生成验证码您的后端生成随机验证码,连同有效期保存其哈希值,并按号码、设备和 IP 地址限制尝试次数。
发送短信调用 POST /sms/sendSms,传入 senderId、destinationNumber(国家区号加号码,仅数字)、message 和 messageType。
追踪送达保存返回的消息 ID,并将 webhook 状态与之匹配。在超时时间内没有收到 DELIVERED,即可触发回退。
校验验证码您的后端将用户输入与已保存的哈希值比对。平台不会检查或保存您的验证状态。
回退通过 WhatsApp 身份验证模板或语音电话重发,语音由我们团队协助开通。
价格按目的地每条短信分段计费,采用 BroadNet 公布的标价,无开通费,无月度最低消费。请查看各国短信价格。

如何对接短信验证码 API

  1. 1

    获取 token

    申请访问权限;我们会为您的账户签发 bearer token,测试消息仅发送到您自己已验证的号码。

  2. 2

    报备 Sender ID

    选择一个事务类 Sender ID,并在上线前于有要求的国家完成报备。

  3. 3

    撰写消息

    验证码放在最前,写明品牌,注明有效期,并加上请勿透露的提示。内容控制在一个分段内。

  4. 4

    发送并追踪

    调用 POST /sms/sendSms,保存消息 ID,并以幂等方式处理 webhook 状态。

  5. 5

    加入回退与限制

    把 WhatsApp 或语音作为下一步,并在上线前对请求做频率限制,以阻止 SMS pumping(短信流量泵)。

短信验证码 API 适合哪些场景

适合以下情况

  • 您在自己的应用中构建注册、登录或支付验证,并希望完全掌控验证码。
  • 您需要向阿联酋、沙特及其他海湾和中东北非市场发送阿拉伯语和英语验证码。
  • 您希望现在使用短信,将来再加入 WhatsApp、RCS 或语音回退,且只用一个 API。
  • 您偏好 REST 和 webhook,并希望在发送量增长后可使用 SMPP。

开始前需要了解的事项

  • 没有托管的校验接口:验证码由您的应用生成、保存和校验。
  • 正式环境的访问权限由我们团队审核,不提供即时自助注册。
  • 部分国家的 Sender ID 报备需要数天,请在上线日期之前启动。
  • 验证码接口是 SMS pumping 欺诈的目标;国家白名单、频率限制和机器人校验需由您在应用中负责。

渠道回退,分步说明

通过平台或 API 只需发送一次。若某一步未能按时送达,下一个渠道会自动接手,所有状态都以同一种 Webhook 格式返回。

  1. 01

    WhatsApp

    带按钮的富媒体模板,支持已读回执,回复进入收件箱

  2. 02

    RCS

    在手机和运营商支持 RCS 时,展示品牌富媒体卡片

  3. 03

    SMS

    通过运营商直连线路触达每一部手机

  4. 04

    语音

    文本无法送达时,以语音播报验证码或消息

每一步都会等待送达回执;超时时间按使用场景设置每条消息的送达状态会返回到您的 Webhook

短信验证码 API 常见问题

如何用 API 发送短信验证码?

先在后端生成验证码,再调用 POST https://api.broadnet.me/sms/sendSms,带上 Authorization: Bearer 请求头,以及包含 senderId、destinationNumber、message 和 messageType 的 JSON 请求体。响应为消息 ID,送达状态会推送到您的 webhook。

API 会替我生成和校验验证码吗?

不会。验证码由您的应用生成,连同有效期保存哈希值,并校验用户输入。将验证留在自己的系统内,意味着验证逻辑、尝试次数限制和审计记录都由您掌控。

可以发送阿拉伯语的短信验证码吗?

可以。将 messageType 设为 UNICODE。阿拉伯语短信每条分段容纳 70 个字符,请保持简短。可先调用 POST /sms/identify 获取编码和分段数。

短信验证码的最佳格式是什么?

以验证码开头,写明品牌和有效期,并提醒用户切勿透露验证码,全部控制在一个分段内。使用事务类 Sender ID,且不夹带优惠,避免被网络当作营销短信过滤。

短信验证码没有送达怎么办?

根据消息 ID 监控 webhook 状态。如果没有看到 DELIVERED,或用户在超时时间内未输入验证码,可提供重发,或切换为 WhatsApp 或语音电话。不要对同一号码无限重试。

如何保护验证码接口免受 SMS pumping 攻击?

只允许您服务的国家,按号码、设备和 IP 地址设置频率限制,在公开表单上加入机器人校验,并对异常号段的请求激增发出告警。发送前的号码查询也有助于剔除无效号码。

一条短信验证码多少钱?

短信验证码按目的地费率每个分段计费。BroadNet 各国的参考标价见短信价格页面,例如发往阿联酋每个分段 0.0123 美元起。无开通费和月度最低消费,具体费率以您的报价为准。

有沙箱环境吗?

测试权限通过同一 API 向您自己已验证的号码发送,让您在上线前测试真实的送达和状态。没有单独的公开沙箱,也不提供即时自助注册。

相关指南

了解平台更多功能

获取短信验证码 API 权限

告诉我们您的目标国家、预计验证码发送量和 Sender ID。我们将签发用于向您自己号码测试的 token,并协助您报备 Sender ID。

请分享您的技术栈以及想要连接的内容,解决方案工程师会与您跟进。

咨询 API 专家

我们将用它回复您。任何企业域名均可。

选填。如希望电话沟通,请附上国家区号。

补充详情(选填)
您感兴趣的渠道(选填)

我们的团队将就您的集成需求与您联系。