用途:向邮件列表发送通知邮件,支持两种方式——在服务端 TypeScript/JavaScript 项目中调用 @schemavaults/send-email 的 sendEmailToMailingList() 辅助函数,或使用 schemavaults-send-email 命令行工具。两者都封装邮件服务器的 POST /api/send 路由,并从环境变量自动解析 API 密钥。
主要能力:支持模板形式(通过 template_id 与 template_props 由服务器渲染 HTML 与纯文本)和原始 text/html 形式(两者必填)。可显式传入 mailingListId 覆盖环境变量,支持 from、replyTo、transport、dryRun 等字段。CLI 支持 --subject、--text、--html、--template-id、--template-props、--mailing-list-id、--text-file、--html-file、--body-file 等参数。
使用方式:安装 bun add @schemavaults/send-email(或 npm install)。设置环境变量 SCHEMAVAULTS_MAIL_API_KEY(以 svlts_mail_pk_ 开头)和 SCHEMAVAULTS_MAILING_LIST_ID(邮件列表 UUID),可选 SCHEMAVAULTS_APP_ENVIRONMENT。CLI 示例:bunx schemavaults-send-email send-to-mailing-list --subject "..." --text "..." --html "..."。发送前可用 --dry-run 校验请求而不实际投递。
适用场景:新用户注册、购买、后台任务错误、账单生命周期事件、运维告警,以及 Claude Code 工作流结束后的单次通知。
限制:仅限服务端调用,禁止在浏览器或客户端代码中使用(API 密钥为机密);每次发送最多 50 个收件人;不用于向单个终端用户发送(应使用 sendEmail());不得发送空白或测试邮件验证请求,应使用 dry-run;模板形式需先通过 listEmailTemplates() 获取可用模板 ID;HTML 中嵌入用户输入需自行转义,服务器不负责清理。