从这里开始

快速入门

创建密钥、验证域名,并用一个可安全重试的请求发送一封受控的邮件。

开始之前

创建一个 SendHQ 工作区,并保持控制台处于打开状态。新工作区会获得受控的集成试用:在付费订阅生效之前,邮件只能投递到账户邮箱或 AWS SES 模拟器地址。

1. 创建 API 密钥

在控制台中打开 API keys,填写一个描述性名称(例如 Production),并在密钥显示时将其复制。请将其保存在服务端的机密信息管理器中。SendHQ 不会再次返回完整的密钥值。

.env
SENDHQ_API_KEY=re_your_key_here

2. 添加发信域名

打开 Domains,添加一个您控制的域名,并发布返回的 DKIM、SPF、DMARC 和 SES 验证记录。Cloudflare 用户可以授权一次性的 DNS 自动配置;SendHQ 会在回调完成后丢弃 OAuth 令牌。

不要发布第二条 SPF 策略。如果已存在 SPF 记录,请将 include:amazonses.com 合并到现有的 v=spf1 值中。

3. 等待验证

使用控制台或 POST /domains/:id/verify。在 SES 将该身份报告为 verified 之前,DNS 可能会依次经历 pending、checking 和 propagating 状态。

4. 发送一封受控的邮件

curl
curl https://sendhq.cc/api/v1/emails \
  -H "Authorization: Bearer $SENDHQ_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: onboarding-user-42" \
  -d '{"from":"Acme <hello@example.com>","to":["owner@example.com"],"subject":"SendHQ is connected","html":"<h1>It works</h1><p>Your first controlled message was accepted.</p>","text":"It works. Your first controlled message was accepted."}'

请求成功后会返回 SendHQ 邮件 ID、服务商的邮件 ID 以及会话 ID。请将 SendHQ ID 与触发这封邮件的应用事件一起持久化保存。

5. 处理结果

API 请求被受理并不等于已投递给收件人。请获取 /emails/:id/events 或使用控制台,查看投递、退信、投诉、拒绝、打开和点击事件。