起飞前检查清单:第一次订购安圭拉号码前应准备什么?
把这份清单过一遍,第一次实测通常就能顺利通过:
- 一个 API 密钥。 在开发者控制台创建;密钥带有
or_live_前缀,一个账户最多可持有 10 个,所以请给预发布环境和 CI 各自分配一个。 - 钱包里有余额。 在测试套件开头先调一次
GET /api/v1/balance,余额不足时可以尽早失败,而不是跑到一半才出错。 - 正确的国家 ID。 安圭拉在 API 中是
ai。这个两字母代码很容易与配置文件里其他地方的 "AI" 标签混淆,所以请把它放进一个有名字的常量。 - 服务 ID。 从
GET /api/v1/services获取,而不是凭空猜一个 slug。 - Webhook 端点(可选)。 在控制台注册,保存好它的密钥,并想好处理程序如何找到正在等待的那个测试。
- 一个能接受美国以外 +1 号码的手机号输入框。 这是团队最常发现得太晚的一项,下一节会解释原因。
如果想在花钱之前先把一切接好,可以请支持团队把开发账户切换为沙盒,它会返回模拟的号码和验证码。
为什么 +1 264 号码会让手机号校验出错?
安圭拉属于北美编号计划(NANP),因此与美国、加拿大以及一长串加勒比地区共用 +1 国家代码。真正标识这座岛屿的是区号 264:安圭拉号码是 +1,接着 264,再加七位数字,也就是加号和 1 之后一共十位。在 NANP 内部,国内长途冠码是 1,所以同一条线路在本地资料里可能写成 1-264-xxx-xxxx。
这个共用的代码会引发一系列常见的 bug:
- 表单把所有 +1 号码都当作美国号码,并试图把它映射到某个美国州;
- 国家选择器对任何以 +1 开头的号码都存为 "US",导致分析数据和短信策略查询出现偏差;
- 校验器拒绝它不认识的区号。
请以 E.164 格式存储号码,即 +1264 加七位用户号码,并使用持续维护的号码库根据完整前缀判断地区,而不是只看国家代码。英语是官方语言,所以这条线路上的验证短信通常以服务的英语模板到达,验证码提取也因此更简单。团队在这里测试,通常是因为要进入东加勒比市场、服务旅游和酒店业客户,或者只是想证明自己的 NANP 处理在五十个州之外也能正常工作。
分步操作:通过 API 订购安圭拉号码
所有调用都发往 https://otproute.com/api/v1,密钥放在 Bearer 请求头里。
- 用
GET /api/v1/countries确认线路,并将响应缓存一天。 - 查询实时价格:
GET /api/v1/prices?country=ai&service=<id>。价格和可用性在一天中会变化,所以请每次运行时查询,而不是写死。 - 用
POST /api/v1/activations创建激活,请求体为{"service": "<id>", "country": "ai"}。响应中包含激活 ID 和 +1 264 号码。 - 把号码输入到你所测试产品的注册或登录页面。
- 在 Webhook 上等待
activation.sms_received,或每隔几秒轮询一次GET /api/v1/activations/{id};每分钟 300 次请求的限制留有充足余量。 - 如果测试中止,用
POST /api/v1/activations/{id}/cancel释放订单,让冻结的金额回到钱包。
完整的请求与响应参考见 API 文档。
安圭拉线路上哪些服务可以收到验证码?
安圭拉线路目前列出超过 600 项服务。今天快照中比较热门的有 WhatsApp、Telegram、Google (Gmail & YouTube)、Facebook、Instagram、TikTok、X (Twitter)、ChatGPT (OpenAI)、Microsoft & Outlook、Amazon、Discord、LinkedIn、Uber 和 Airbnb。对于服务岛上游客的团队来说,旅行和出行类应用往往很重要。
请把这份列表当作起点,而不是承诺:任何 OTP 路由网络的库存都会在一天中变化,这正是价格接口为每个服务与国家的组合报告实时可用性的原因。
非开发人员如何在控制台完成同样的测试?
产品经理和客服人员不需要使用 API。登录后打开 OTP Gateway,选择安圭拉和服务,下单前查看显示的价格,然后确认。号码会连同倒计时一起出现;把它粘贴到应用中,短信到达时验证码会显示在同一个屏幕上。订单旁边有取消按钮,方便你临时改变计划。对于可重复的回归测试,我们的 QA 测试指南介绍了团队如何划分手动检查与自动化检查。
故障排查:安圭拉的验证码没有到
提交工单之前,请先逐项排查:
- 让窗口走完。 激活会保持 20 分钟。在第一个号码下单一分钟后再订第二个,只会分散你的注意力。
- 检查是否接受。 有些服务会拒绝虚拟号码,或对新号码套用自己的风控规则。如果注册表单直接拒绝该号码,请取消订单并换一条线路。
- 稍后重试或更换线路。 小岛线路的可用性会变化;稍后再试,或在另一个国家测试同样的流程,往往就能解决。
- 避免紧凑循环。 在循环中反复下单会消耗频率限制,还可能让目标服务更加怀疑,而不是更少。
- 检查你的 Webhook。 确认处理程序校验了
X-OTPRoute-Signature并返回成功;HMAC 校验指南介绍了恒定时间比较和时间戳检查。
无论原因是什么,收不到的验证码不会产生任何费用:窗口到期仍无短信,或你主动取消,全部金额都会自动退回钱包。
长期号码、钱包与发票
虽然安圭拉拨号使用 +1,但它不属于专用号码产品的范围。自助式长期号码只在美国和加拿大提供,每月 $1.95 起,支持接收短信、Webhook 转发和浏览器通话;详见虚拟号码。如果你需要长期使用的安圭拉号码,请发邮件至 [email protected];能否安排取决于当地规定。
计费使用一个预付费美元钱包,没有月费,也无需选择套餐。可用银行卡或 USDT/USDC 充值,每次充值都会通过电子邮件收到 PDF 发票。当前价格见价格页面。OTP Route 用于测试和运营你自己的产品和账户,并须遵守各服务的条款及我们的可接受使用政策。
常见问题
没有当地 SIM 卡,我能测试应用的安圭拉注册流程吗?
可以。从 OTP Gateway 订购一个一次性的 +1 264 号码,输入到你的应用里,然后在控制台或通过 API 读取验证码。
OTP Route API 中安圭拉使用什么国家 ID?
安圭拉是 ai。在价格和激活请求中把它作为 country 的值传入即可。
+1 264 号码会被当作美国号码吗?
不应该。它虽然共用 +1 代码,但区号 264 属于安圭拉,所以地区检测必须查看完整的前缀。
安圭拉的验证码要多少钱?
验证码每个 $0.20 起。确切金额取决于服务,在下单前会显示在控制台中,也可由价格接口返回。
如果短信没有到达号码会怎样?
不会产生任何费用。如果 20 分钟窗口结束仍没有验证码,或你先取消了订单,全部金额会退回你的钱包。
我能保留一个安圭拉号码用于以后登录吗?
无法自助办理。长期号码是美国和加拿大的产品;其他情况请发邮件询问团队。
充值钱包之前,有办法先把安圭拉测试接起来吗?
有。应要求,开发账户可以切换为沙盒,它会返回模拟的号码和验证码,用于端到端测试。
服务名称均为其各自所有者的商标,OTP Route 与其无任何关联。请合法使用号码,并遵守各服务的条款及我们的可接受使用政策。