← 返回博客

Courier.app 替代方案(2026):事务 HTTP 邮件 API 与域名邮箱

对照 Courier 的多渠道通知编排(自带服务商、偏好、journeys)与 Rovela 的扁平 POST /emails、Idempotency-Key、入站与域名邮箱——何时双跑。

更新于 2026年11月4日
Courier.app 替代方案(2026):事务 HTTP 邮件 API 与域名邮箱

为什么有人会搜 Courier.app 替代方案

Courier 是客户消息 / 通知编排平台:用同一套 API 与 Design Studio 覆盖邮件、短信、推送、聊天(Slack、Microsoft Teams、WhatsApp)与应用内收件箱,并附带 journeys、用户偏好、tenants 与投递日志。其文档写得很清楚:你需要自带投递服务商(Bring your own providers)——SendGrid、Postmark、Amazon SES、Twilio、FCM、APNs 等——Courier 负责路由、故障转移、模板与偏好强制(Courier 文档概览、integrations)。

2026 年搜 “Courier alternative / Courier.app 替代” 的开发者意图,通常是下面几类——不是说 Courier 做不好多渠道通知:

  • 想要扁平的 HTTP 邮件发送(POST /emails,带 from / to / subject / html 或 text),任意语言、队列工人或 AI agent 都能直接调用——而不必先把每封 OTP 或收据都建模成编排层里的通知模板 + 用户档案 + routing。
  • 产品对事务流量基本是只做邮件(或以邮件为主),再在独立 ESP 之上叠一层编排,成本和部件暂时用不上。
  • 更习惯按发送量 + 域名 + 邮箱计价,而不是按通知编排次计价——尤其当量主要是鉴权码、密码重置、收据,且应用已经自管这些状态。
  • 需要同一组织下、人能打开的企业邮箱(hello@、support@,Webmail/IMAP),而不只是出站通知路由进用户收件箱。
  • 需要入站回复与带签名的投递 Webhook,挂在精简发送 API 旁边。
  • 双跑:Courier 继续做短信 / 推送 / 应用内 / 带偏好的多渠道路由;高频仅邮件的事务流量走更薄的 HTTP 邮件栈(或其他渠道仍走 Courier,邮件热路径直连邮件 API)。

Rovela 不会复制 Courier 的多渠道路由、偏好中心、应用内收件箱、journeys 或 BYO 服务商抽象。它针对的是这类搜索里的开发者事务邮件 + 域名邮箱一侧。本文只写文档里有的能力:何时继续用 Courier、Rovela 实际提供什么、如何迁移线上邮件 POST 路径,并且不编造短信/推送对等。

其他关键词品类的姊妹文(别混 hook):Customer.io 替代、Loops.so 替代、Resend 替代、SendGrid 替代、Postmark 替代、Mailgun 替代、Brevo 替代、Mailtrap 替代、Amazon SES 替代、SparkPost 替代。本文主关键词仍是 Courier / Courier.app。

什么时候 Courier 仍是更合适的选择

继续用——或双跑——如果:

  • 你需要一套通知 API,在邮件、短信、推送、聊天与应用内之间路由,并在发送时强制用户偏好(courier.com 与 文档 的明确模型)。
  • 非工程师主要在 Design Studio / journeys 里改文案与渠道路由,而不是维护一段 curl。
  • 已经接入多家服务商,并希望故障转移 / 渠道回退(routing.method 的 single vs all),而不改应用代码(product notifications API)。
  • 应用内收件箱、偏好中心组件,或多租户品牌/路由是硬需求。
  • 你明确要在已有 ESP 之上做编排——Courier 按发送另计费,服务商账号仍归你(文档 FAQ)。

若你真正需要的是 Courier 的多渠道编排层,Rovela 不是对位替代。更适合 Rovela 的痛点是邮件基础设施:已验证域名上的 POST /emails、Idempotency-Key、入站,以及域名邮箱——外加适合边车项目与 agent 的长期 Free 额度(定价)。

通知编排器对「应用自管邮件」留出的空隙

模板 + 路由 + BYO ESP vs 扁平邮件体

Courier 的强项是编排:设计一次、多处发送;你提交一次通知(常见是模板 id/别名 + data + routing),Courier 渲染并通过你接入的服务商投递。邮件只是多渠道之一;生产邮件通常仍依赖 Courier 之下的 ESP 账号(integrations)。

应用自管的 OTP、密码重置链接、agent 工具对邮件常常要相反的形状:密钥在你们自己的库里生成,再直接向邮件 API 发扁平 JSON——不必同步用户档案、不必列渠道清单、不必在工人与邮箱之间再夹一层厂商。Rovela 的发送路径就是一次调用——POST https://api.rovela.dev/emails——Bearer 鉴权(快速开始、API: emails、HTTP 邮件 API)。需要时也可以用 Rovela 模板 的 template: { id, variables },但不是发送的前提。

Rovela 不声称提供短信、移动推送、Slack/Teams 投递或应用内通知中心。若这些渠道是硬需求,请继续用 Courier(或其他编排器)承担它们。

编排计价 vs 按发送量与邮箱上限

Courier 围绕跨渠道的通知发送量打包(见 Courier 定价 上的 Developer / Business / Enterprise——数字只从该页引用)。Rovela 按每月邮件数、域名、邮箱与存储计价——Free 为 100 封/月、1 个域名、5 个邮箱、1 GiB、无需绑卡;Pro 自 $29/月 起提高上限(定价)。架构落数字前请重读两边定价页。还要记住:继续用 Courier 发邮件时,邮件通道常常是 Courier + ESP 两笔账单;Rovela 本身就是邮件投递产品。

偏好 / 旅程 UI vs agent 能持有的密钥

编排平台优化仪表盘、Design Studio、journeys 与偏好中心。只需要发邮件的 agent / 队列栈,更常需要只能发送、不能改域名/模板的 sending_access 密钥(鉴权)。永远不要把 sending_access(或任何 API key)放进浏览器包——从服务端调用 Rovela。

人用邮箱与入站

Courier 重心在通过已接入服务商做产品通知(及应用内)。若还需要 Webmail/IMAP 里的 support@yourdomain.com,以及解析后推到 Webhook 的入站,Rovela 可在同一组织提供(webmail、SMTP、接收邮件)。Free 含 5 个邮箱;付费提高数量与存储(定价)。

工人重试时的幂等

Rovela 接受 Idempotency-Key 头(最长 256 字符);24 小时内重试返回原响应而不会再发一封(API: emails)。对队列驱动的 OTP 与收据很重要——一次超时双 POST 发出两个不一致的验证码就是客服事故。

文档映射:发送、鉴权、邮箱、入站

1. 一次发送:POST /emails

curl -X POST https://api.rovela.dev/emails \
  -H "Authorization: Bearer re_your_sending_key" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: courier-migrate-receipt-order_10422" \
  -d '{
    "from": "Acme <no-reply@yourdomain.com>",
    "to": "alice@example.com",
    "subject": "Your Acme receipt",
    "html": "<p>Thanks. Order <b>A-10422</b> is confirmed.</p>",
    "text": "Thanks. Order A-10422 is confirmed."
  }'
  • 响应:入队消息 id({"object":"email","id":"..."})。200 表示已接受投递,不是「已经进收件箱」。
  • 可选模板:用 template: { id, variables } 代替 html/text(模板指南、模板 API)。模板管理需要 full_access(或控制台);生产发送应用 sending_access。
  • 批量:POST /emails/batch 最多 100 封;batch 拒绝 template——带模板的邮件请逐封 POST /emails(API: emails)。

2. 域名验证

添加域名,按提示发布 SPF/DKIM/DMARC(及 return-path),再验证(快速开始、域名)。未验证的 from 域名会 400,不会静默丢掉。

3. 投递 Webhook

订阅 delivered/bounced/complained(及相关)事件;验签;按事件 id 去重(Webhooks、安全)。生产优先 Webhook 而非轮询。读取消息状态需要 full_access 或控制台会话;sending_access 只能发送。

4. 企业邮箱

Webmail:rovela.email;SMTP 主机 mx.rovela.dev,端口 465,用户名为完整地址,密码为按设备凭据(SMTP、webmail 手册)。

5. 入站

在已验证域名上启用入站(full_access),发布 MX,订阅 email.received(接收邮件)。模式见:入站邮件 API Webhook。

迁移清单(Courier 口味)

  1. 保留 Courier 做多渠道产品通知、偏好、应用内收件箱与 journeys——别硬把短信/推送/聊天塞进仅邮件 API。
  2. 创建 Rovela 组织,用 Free 先证明真实邮件投递(注册)——长期免费档、无需绑卡(定价)。
  3. 验证生产发送域名(按提示的 DKIM / SPF / DMARC / return-path)。
  4. 为应用与 agent 创建 sending_access 密钥;域名、模板、入站管理用 full_access(鉴权)。
  5. 按意图分流:多渠道 / 带偏好通知 → Courier;仅邮件的 OTP / 重置 / 收据工人 → POST https://api.rovela.dev/emails。
  6. 每封可重试的事务邮件加 Idempotency-Key(如 otp-{userId}-{purpose}、reset-{tokenHashPrefix}、receipt-{orderId})。
  7. 把退信/投诉 Webhook 指到你的处理逻辑;切邮件流量前先验签。
  8. 可选: 出站稳定后再建邮箱并启用入站。
  9. 可选: 用 full_access 把重复 HTML 抽成 Rovela 模板,再按 id 发送——思路类似 Courier 的通知模板 id,但是不同产品(欢迎信模板)。
  10. 不要假定 Rovela 是 Courier 的开箱即用 provider 集成——除非你对照 Courier 当前集成列表与 Rovela 的 SMTP/API 文档自行核实;本文不编造一等公民的 Courier↔Rovela 连接器。

多数搜这个词的团队会继续用 Courier 做编排,只迁移(或起步)仅邮件热路径到事务邮件 API。这种拆分很常见——不是任何一方失败。

不编造数字的定价对照

需求Rovela Free(文档)说明
每月发送100 封见 定价
邮箱5同一 Free 计划
存储1 GiB同一 Free 计划
银行卡不需要长期免费档
API / Webhook / 入站 / 模板包含升级提高限额

付费计划(定价页上的 Pro、定制 Enterprise)提高邮件、域名、邮箱与存储上限。Courier 的包装(Developer 免费额度、Business 按次、Enterprise)只应引用 courier.com/pricing——比较时不要编造你未在该页核实过的数字。若邮件仍走 Courier,还要预算底层 ESP。

Rovela 定价表也列出 broadcasts、contacts、segments 等能力随计划限额提供;这不是与 Courier journeys、偏好或多渠道路由同级的产品表面。不要把 Rovela 宣传成 Courier 克隆。

本文不是什么

  • 不是说 Courier「不擅长邮件」——其模型是有意做在服务商之上的编排,邮件 ESP 包含在内。
  • 不是说 Rovela 能替换 Courier 的短信、推送、聊天、应用内收件箱、偏好、journeys、tenants 或 BYO 故障转移。那些不在 Rovela 的定位里,除非文档写明——多渠道编排也不是 Rovela 的卖点。
  • 不是 Customer.io / Loops / Resend / SendGrid / Postmark / Mailgun / Brevo / SES / Mailtrap / SparkPost 改写;那些见上方姊妹文。也不是 Knock 对比(另一关键词)。
  • 不编造 MCP 工具、中国国内邮箱厂商话题或未文档化的接口。截至撰写时没有可照抄的 /alternatives/courier 营销页。
  • Rovela 不提供密码重置或 OTP「产品功能」:令牌/验证码仍由你的应用生成与校验;Rovela 只负责投递(密码重置示例、验证码示例)。

下一步

  1. 若多渠道编排模型仍合适,继续把产品通知放在 Courier。
  2. 用 快速开始 + POST /emails 发一封真实事务邮件。
  3. 需要人读的收件箱时,创建邮箱并打开 webmail。
  4. 需要回复或 support@ 时,启用 入站。
  5. 鉴权邮件模式见:验证码 vs 链接、安全密码重置、OTP / 魔法链接进垃圾箱。

一句话: 搜 Courier.app 替代,往往仍想保留 Courier 做多渠道通知编排——但应用自管的邮件需要扁平且幂等的 POST /emails、按发送量的 Free/Pro,以及团队能打开的域名邮箱。Rovela 做的是这一邮件基础设施切片。渠道变多时留着编排器;仅邮件热路径按上文文档迁移即可。