邮件错误码
邮件发送受理错误、HTTP 状态、重试建议及受理后的失败原因。
本页汇总邮件发送接口的受理错误和受理后的失败原因。调用成功须同时满足 HTTP 202 和 code=000000;受理不代表送达。
受理错误
请求失败时根据 HTTP 状态和六位 code 判断原因,保留 traceId 供排查。不要根据 message 文案编写分支。
失败时 data=null。message 是动态说明,不应作为唯一判断条件。
| HTTP | code | 含义与处理 |
|---|---|---|
| 400 | 010001 | 请求体不是有效 JSON 或格式错误。 |
| 400 | 010002 | 缺少必需的普通请求头。 |
| 400 | 010003 | 字段、业务参数或 X-Custom-TraceId 校验失败。 |
| 400 | 010013 | 幂等键缺失或不合法。 |
| 405 | 010009 | HTTP 方法不支持。 |
| 415 | 010010 | Content-Type 不支持。 |
| 401 | 020001 | 缺少 AppID 或 API Key。 |
| 401 | 020002 | API Key 无效、不存在或未启用。 |
| 401 | 020008 | 签名头不完整、签名错误或 Nonce 重放;重新生成签名并核对凭证。 |
| 401 | 020009 | CurTime 格式有效但超出时间窗口;同步时钟后重新签名。 |
| 403 | 020005 | 出口 IP 不在允许范围或白名单配置无效。 |
| 409 | 010007 | 同一幂等键对应不同请求内容;停止自动重试。 |
| 409 | 010008 | 原幂等任务仍在处理;使用原键原请求体有限退避。 |
| 403 | 030003 | API Key 日配额已达上限。 |
| 429 | 040001 | 短期速率超限;按 Retry-After 等待。 |
| 500 | 050001 | 平台内部错误或其他未映射受理异常。 |
| 503 | 050002 | 服务暂时不可用,可按原键原请求体有限重试。 |
| 504 | 050003 | 受理结果无法确认;不要换键重发,先核对原任务。 |
受理后的失败原因
send_failed 事件可能使用以下平台码。供应商原始原因另行保留,不属于该码表。
| 代码 | 含义 | 代码 | 含义 |
|---|---|---|---|
141001 | 模板不可用 | 141010 | 邮件策略校验失败 |
141002 | 模板正文为空 | 141011 | 路由配置无效 |
141003 | 事务模板缺少变量 | 141012 | 通道配置无效 |
141004 | 无可用路由 | 141013 | 通道认证失败 |
141005 | MIME 组装失败 | 141014 | 运行时快照无效 |
141006 | 通道明确拒绝 | 141015 | 退订配置无效 |
141007 | 载荷无法解析 | 141016 | 重试耗尽 |
141008 | 全部收件人被抑制 | 141017 | 内部处理失败 |
141009 | 发件域名未授权 | 141018 | 无有效收件人 |
这些代码发生在受理之后,与 HTTP 受理错误码分开处理;受理协议见下方相关资源。
如何处理
限流按 Retry-After 等待;超时、连接中断或 5xx 先核对原任务,再用原 X-Idempotency-Key 和原请求体有限重试。已受理后的逐封失败不要自动当成新任务重发。
平台通用错误码结构与其他产品码段见错误码总览。
最后更新于