产品指南
Email Checker API:如何在单次、批量和异步任务请求之间进行选择
一份面向开发者的决策指南,涵盖单次、多地址同步及异步批量邮箱检测,并指导如何将检测结果转化为应用程序逻辑。

如何为每项任务选择合适的邮箱检测 API 请求方式,并将“可投递”、“不可投递”和“无法判定”的结果映射到代码逻辑中。
调用邮箱检测 API 时,应根据等待结果的对象以及地址数量,从三种请求形式中选择一种。当用户正在等待单个地址的结果时,使用单次检测 (POST /api/v1/check);当一小批地址同时到达时,使用同步多地址检测 (POST /api/v1/batch-check,支持 1–100 个地址,结果按输入顺序返回);当地址已存在于文件中时,使用异步批量任务 (POST /api/v1/bulk-tasks,随后进行状态轮询)。无论采用哪种形式,请围绕三种结果(而非简单的“是/否”标志)来设计代码:可投递、不可投递和无法判定,并在调用前处理格式错误的输入。每个已完成的结果仅描述检测时刻该地址的状态。
邮箱检测 API 能回答什么,以及哪些需要您自行处理
大多数针对此主题排名的页面仅列出功能便戛然而止。集成问题的核心在于:单次调用究竟决定了什么,而您的应用程序仍需负责什么?
EmailCheckPro 的邮箱可达性检测返回“可投递”(地址在检测时刻可以接收邮件)或“不可投递”的已完成结果。邮箱头像检测增加了公共头像信号,但仅适用于 Gmail、Yandex 和 Mail.ru 地址。
您的应用程序仍需负责以下三项工作:
- 格式筛选。 完整的地址包含本地部分、
@符号和域名。格式错误的输入属于表单错误,而非“不可投递”结论,因此请在发起调用前将其拦截。 - 确认与许可。 确认链接或您自己的许可记录涵盖了这一点。
- 时效性。 结果仅属于检测时刻。请将检测日期与结果一并存储,以便后续任务了解其时效。
将这些边界保留在代码中(而不仅仅是文档中),可以避免下文描述的最常见的集成错误。
选择邮箱检测 API 的请求形式
这三种请求形式不可互换,选择错误通常是导致表单响应缓慢或导入任务脆弱的原因。
| 情况 | 请求 | 结果返回方式 | 注意事项 |
|---|---|---|---|
| 注册、结账或个人资料表单 | POST /api/v1/check |
在同一响应中 | 保持调用在服务器端进行,并设置您自己的超时时间 |
| 管理员粘贴短列表,或任务处理自上次运行后编辑过的记录 | POST /api/v1/batch-check (1–100 个地址) |
在同一响应中,按输入顺序 | 未获得已完成结果的项目不属于“不可投递” |
| CRM 导出、列表迁移或任何准备好的文件 | POST /api/v1/bulk-tasks,随后 GET /api/v1/bulk-tasks/{id} |
稍后,以 CSV 结果文件形式 | 轮询频率请勿超过每 30 秒一次 |
快速决策指南:
- 是否有用户在屏幕前等待? 仅针对他们输入的地址使用单次检测端点。
- 地址是否同时到达且不超过 100 个? 发送一个多地址请求。这仍然是同步的:它是一个较大的单次调用,而不是小型批量任务。
- 源文件是否已经是文件,或者远超几百行? 提交批量任务,并让后台工作进程收集结果。每个产品的任务限制均适用,并列在 API 文档中。
- 任务是否需要头像? 首先将列表过滤为支持的 Gmail、Yandex 和 Mail.ru 域名。不支持的域名会在实时扣费前被拒绝;在头像批量文件中,这会导致准备阶段失败并返回保留状态。
对于不在文件中的几百个地址,使用多个多地址请求或仪表板的实时检测(最多支持 500 个地址)是合理的。
将结果映射到应用程序逻辑
将结果简化为布尔值是大多数集成出错的地方。使用小型的状态类型可以保持含义的完整性:
| 状态 | 来源 | 注册表单 | 导入或发送流水线 |
|---|---|---|---|
| 格式错误 | 您自己的格式检查 | 在线要求更正 | 将该行移至修复队列 |
| 可投递 | 已完成的检测 | 继续 | 保留,并附带检测日期 |
| 不可投递 | 已完成的检测 | 要求提供其他地址,提供重试选项 | 禁止常规发送,并寻找当前地址 |
| 无法判定 | 检测无法确定(例如 Catch-All 地址) | 接受并标记 | 保留在审核组中,稍后重新检测 |
| 未完成 | 超时、网络错误或服务故障 | 接受并标记 | 从队列中稍后重试 |
根据文档,需遵循以下三条规则:
- 在单次实时检测中,无法判定的地址会返回业务代码而非结果,且不会扣费。请将该分支视为独立状态,而不是在紧密循环中重试的错误。
- 在多地址响应中,每个项目都会说明是否存在已完成的结果。只有存在结果的项目才携带“可投递”或“不可投递”状态;其余项目属于“无法判定”或“未完成”分支。
- 无效、失败和无法判定的检测不会扣费,因此稍后重试它们除了时间外没有额外成本。请安排重试,而不是立即重复。
运行异步批量任务而不产生意外
批量任务是一个小型状态机,它应存在于后台工作进程中,而不是 Web 请求中。
- 准备文件。 编写 TXT 或 CSV 文件,每行包含一个完整的邮箱地址。无效和重复的行会在准备过程中被移除,但预先剔除明显的垃圾数据会让您自己的统计更容易核对。
- 提交并记录。 将
POST /api/v1/bulk-tasks返回的任务引用保存在数据库中,同时保存源文件名、所用产品和提交时间。这样,崩溃的工作进程可以恢复任务,而不是重新提交。 - 耐心轮询。 查询
GET /api/v1/bulk-tasks/{id}的频率请勿超过每 30 秒一次。相比于保持连接打开的循环,检查一次后休眠的定时任务更适合此场景。 - 及时下载。 成功的任务会在下载链接中提供一个 CSV 文件,该链接有效期为 12 小时。如果链接过期,请再次查询同一任务以获取新链接,而不是第二次上传文件。
- 按地址合并。 由于准备过程可能会丢弃行,请始终通过邮箱地址将结果 CSV 与您的记录连接,切勿通过行号连接。
可达性 CSV 将每个地址与其结果配对。头像 CSV 还会说明是否找到了公共头像并提供头像链接;即使头像存在,该链接也可能为空,因此请将空链接视为正常值。
日常集成运维
一旦请求形式和状态正确,一些运维习惯可以保持集成的稳定性:
- 仅使用服务器端密钥。 API 密钥会消耗账户余额,该余额由 Web 检测、REST 调用、批量任务和 MCP 访问共享。切勿将其发布在浏览器或移动端代码中。
- 在变更点进行检测。 在创建或编辑地址时进行检测,然后在您自己的重新检测窗口内重复使用存储的结果,而不是在每次页面浏览时都进行调用。
- 表单处“失败即开放”,流水线中“失败即关闭”。 如果注册期间检测缓慢或未决,允许用户继续操作并标记该地址。在发送流水线中,请保留被标记的行,直到它们获得已完成的结果。
- 保护您自己的端点。 如果您的应用暴露了“检测此地址”的路由,请对其进行速率限制并返回一致的消息。OWASP 邮箱验证指南警告不要让表单泄露账户是否存在。
- 为 AI 客户端提供 MCP 端点。
https://emailcheckpro.com/mcp支持单次检测、每次调用最多 100 个地址、产品列表和余额查询。基于文件的批量工作请保留在 Web 工作流或 REST API 上。
当前的请求限制和使用详情发布在 EmailCheckPro API 文档中;请直接阅读文档,而不是硬编码假设。
符合 API 预期的格式检查
成本最低的调用是您从未为格式错误的输入发起的调用。以下两个参考资料有助于您选择合理的筛选标准:
- WHATWG HTML 标准定义了浏览器用于
type="email"字段的模式。它有意偏离了完整的邮件标准以保持实用性,这使其成为合理的服务器端基准。 - RFC 5321 描述了邮件传输中使用的地址形式。请将其视为针对引号本地部分等边缘情况的格式参考,而不是任何检测服务工作原理的描述。
在实践中:修剪空格,移除从文档中复制的尾随标点符号,将域名小写,保持本地部分原样,仅拒绝明显缺少本地部分、@ 或域名的输入。拒绝加号或长顶级域名的过于严格的模式会拒之门外真实用户,应予以避免。
常见问题解答
团队何时应从多地址调用切换到批量任务?
当地址已经存在于文件中,或者任务需要多次连续的多地址调用才能处理完列表时,请进行切换。多地址请求适用于同时到达且需要在同一响应中获得答案的 100 个以内的地址组。批量任务适用于可以等待的预处理导出文件,因为结果稍后以 CSV 形式返回,且工作进程只需每 30 秒或更低频率轮询状态。
应用程序应如何存储邮箱检测 API 的结果?
保留输入的地址、所用产品、文字形式的结果、检测日期和地址来源。该记录使支持团队能够解释决策,使重新检测任务能够优先选择最旧的结果,并使“无法判定”或“未完成”的行与“不可投递”的行分开。避免仅存储原始响应负载作为记录,因为其他系统将依赖于 API 的格式。
可投递结果可以替代确认邮件吗?
不能。可投递结果仅告知地址在检测时刻是否可以接收邮件,且检测本身不会发送任何内容。确认链接回答了另一个问题:输入地址的人是否控制该地址并同意接收消息。许多注册流程使用检测在发送前拦截无效地址,然后依靠确认来获取许可和所有权证明。
重试未完成检测的最安全方法是什么?
将它们放入带有延迟的队列中,而不是在失败的请求中重试。无法判定、失败和无效的检测不会扣费,但立即重试很少改变结果,且可能拖慢您自己的服务。安排定时重试,限制尝试次数并记录每次尝试的日期,可以保持记录的准确性,并让审核人员查看哪些地址仍然没有已完成的结果。
了解更多
选择适合您工作流下一步的产品信息。