用途:Inbound Parse 把发往你域名的入站邮件转换为 HTTP POST 请求发送到你的 Webhook 端点。SendGrid 通过域名的 MX 记录接收邮件,再把解析后的内容转发给应用。
配置方式:将域名或子域名的 MX 记录指向 mx.sendgrid.net;在 SendGrid Console 的 Settings > Inbound Parse 中添加 Host 与 URL;选择 Parsed(默认)或 Raw 模式。建议使用子域名(如 inbound.yourdomain.com),避免影响主域名上已有的邮件。
Parsed 模式:SendGrid 提取字段并以表单数据 POST,包括 from、to、subject、text、html、envelope(含 to 数组与 from 的 JSON 字符串)、attachments(附件数量字符串)、attachment-info(每个附件的 JSON 元数据)以及 attachment1、attachment2 等实际附件文件。可用 Flask 等框架在 /inbound 路由接收,读取 request.form 与 request.files。
Raw 模式:把完整 MIME 邮件作为 rawEmail 字段发送,适用于需要完整头部、DKIM 签名或非标准 MIME 部分的场景,需自行解析 MIME。
安全:所有入站邮件内容均为不可信外部输入,渲染 HTML 前应做净化以防 XSS;若交给 LLM,应作为用户输入隔离,切勿拼接进系统提示。建议启用 ECDSA 签名验证(与 Event Webhooks 相同机制)来确认载荷来自 SendGrid,比 IP 白名单更可靠,因为其 Webhook 流量来自 IP 频繁变化的云基础设施。
限制:无法在已接收邮件的域名上使用,MX 必须指向 mx.sendgrid.net;必须能修改 DNS;超过 30MB 的邮件会被拒绝;无法在到达 Webhook 前过滤邮件;无法按地址路由到不同端点,同一域名/子域名所有邮件都发往单一 Webhook URL;不保证投递顺序;无内置限流,需自行实现限流、载荷大小校验与内容净化。
后续可参考发送邮件、投递跟踪与账户设置相关技能。