邮箱验证码 API:发送验证码和接收验证码的区别

“邮箱验证码 API 接口”其实指两件相反的事:一种是发送,你的网站把验证码发到用户邮箱;另一种是接收,你的脚本拿到一个邮箱地址,读出别的网站发到这个地址的验证码。OTPGmail 只做接收,不替任何网站发信。

后端开发者、测试工程师和做自动化工具的人,常常在这个词上走错方向。下面先用一张表分清你要哪一种,再分别讲两边要注意什么。

30 秒判断:你要“发”还是“收”

你想做的事 属于 需要的东西 OTPGmail 能不能做
给自己网站或 App 的用户发注册码、登录码、找回密码邮件 发送 SMTP 发信,或者云厂商的邮件推送服务 不能
用 QQ 邮箱、163 邮箱的 SMTP 在小项目里发验证码 发送 邮箱的 SMTP 服务和授权码 不能
测试自己网站的注册流程,确认验证邮件真的能送达 发送 + 接收 你的发信通道,加一个能读取验证码的收件邮箱 能,负责接收这一半
在脚本或测试里注册别的网站,读出它发来的验证码 接收 一个能收信的真实邮箱,以及读取验证码的接口 能
找“自动获取邮箱验证码的软件” 接收 同上 能,但它是网页和 API,不是需要安装的软件

一句话:验证码从你的服务器发出去,就是发送侧;验证码从别人的服务器发过来、要你去读,就是接收侧。

发送邮箱验证码 API:要点清单

OTPGmail 不提供发信服务,也不推荐具体厂商。但无论你用哪家,发验证码这件事都绕不开下面几点:

如果用户看到“验证码发送失败:未配置邮箱发送服务”之类的提示,通常说明这个网站后台还没有配置发信参数,要由网站管理员处理,用户换邮箱也没用。

发信接好以后,最好再验证一下邮件能不能真的送达常见邮箱。这时就用得上接收侧:做法见自动化测试怎么处理邮箱验证码。

接收邮箱验证码 API:OTPGmail 的三步调用

“接码 API 是什么”?在邮箱这一侧,就是一个替你准备收件邮箱、再把收到的验证码返回给你的接口。注意:搜索结果里很多“接码 API”说的是手机号收短信的接口,和这里是两回事;OTPGmail 只处理邮箱,不提供手机号。

OTPGmail 租给你的是真实的 @gmail.com 或 @icloud.com 邮箱。每个请求都在请求头里带上你自己的 API 密钥:Authorization: Bearer og_...。

  1. GET /v1/services:查服务代码、价格和库存。比如 GitHub 是 git,列表里没有的网站用 ot(任意服务)。返回里的 icloud 不为 null,说明这个服务可以租 iCloud 邮箱。
  2. POST /v1/orders:请求体 {"service": "git", "domain": "gmail.com"},domain 可以不传,默认 gmail.com。同时带上新的 Idempotency-Key 请求头,超时重试时沿用同一个,就不会重复租用。返回的 data 是数组,每个邮箱一个订单。
  3. GET /v1/orders/{orderId}:把 email 填进目标网站的表单之后,每 3–5 秒查一次。接口没有回调通知,只能轮询。

订单里你最常用的几个字段:

字段 含义
email 分配给你的地址,填进注册表单
status waiting_code 等待中 → completed 已收到第一个验证码,或 cancelled 已取消并退款
otp 收到的验证码数组,最早的在前、最新的在最后,每项有 code 和 receivedAt
codeDeadlineAt 到这个时间(Unix 秒)还没有验证码,系统自动取消订单并全额退款

不想等了,可以在第一个验证码到达前调用 POST /v1/orders/{orderId}/cancel,费用 100% 退回;什么都不做,到时间也会自动取消退款,最长 25 分钟,退款规则见退款与质保政策。完整的 Python 写法和错误码处理,见用 Python 接收邮箱验证码。

“邮箱验证码怎么直接提取出来”也是常见问题。用 OTPGmail 时,系统已经把验证码或验证链接提取到 otp[].code 里;少数邮件提取不出来,code 里会是整封邮件的原文,这时用正则自己找就行。

授权码、API 密钥、验证码:别混在一起

很多人卡住,是因为把这三个东西当成了一回事:

名称 谁给你的 用来做什么
邮箱授权码 / 应用专用密码 你自己的邮箱服务商 让邮件客户端或程序登录你自己的邮箱,用来发信或收信
OTPGmail 的 API 密钥(以 og_ 开头) OTPGmail,在“API 文档”或“账户”页面查看 调用 /v1 接口,费用从你的余额扣
验证码 你注册的那个网站 证明你能收到发往这个地址的邮件

所以:用 QQ 邮箱 SMTP 发验证码,要的是授权码;调用 OTPGmail 收验证码,要的是 API 密钥;租用的邮箱不会给你密码或授权码,你也不需要。API 密钥只放在服务器或 CI 里,不要写进网页前端或手机 App。

收费、错误与限额

接收接口按次计费:分配到邮箱才扣费,价格和网页上租用一样,调用 API 本身不收费,详见产品与价格。常见错误码:

请求频率和单次可租数量的具体限额,以 API 文档为准。只在你自己的项目,或目标平台条款允许的范围内使用。使用前请确认符合该平台的服务条款和你所在地的法律法规;OTPGmail 只提供接收验证邮件的邮箱,不提供绕过平台或地区限制的方法。

常见问题

邮件验证码接口有哪些?

大致三类:发信类(SMTP、云厂商的邮件推送接口),用来给你的用户发验证码;读信类(IMAP,或者邮箱服务商自己的接口),用来读你自己邮箱里的邮件;租用邮箱接收类,比如 OTPGmail 的 /v1,每次给你一个新的真实邮箱并返回验证码。

能用 OTPGmail 群发验证码吗?

不能。OTPGmail 只接收邮件,租来的邮箱也不能发信。给自己的用户发验证码,请用发信服务。

谷歌邮箱 API 接码是什么意思?

通常是指通过接口拿到一个 @gmail.com 地址,并读取发到这个地址的验证码。在 OTPGmail,就是 POST /v1/orders 时 domain 用 gmail.com;你拿到的只是验证码,不是这个 Gmail 账号的登录权限。

收不到验证码会扣钱吗?

不会。到 codeDeadlineAt 仍没有验证码,订单自动取消并全额退回余额;第一个验证码到达前自己取消,也一样全额退款。

相关教程

现在就获取你的验证码

注册账户不收费。分配到邮箱才扣费;等待时间内(最长 25 分钟)没有收到验证码,自动 100% 退款。

找不到你需要的服务?在租用页面点添加服务,如果我们的基础设施支持,就会把它加上。

需要可以登录的 Gmail 账号,而不只是验证码?请看购买短效 Gmail 账号 · 退款与质保