01简要说明
发送事务型通知时,请从后端针对每个事件调用一次 POST /v1/messages,使用 shipping 等 campaign 标签以及订单号等您自己的 reference 标记该事件,并将短信标记为事务型,使其不会因静默时段而暂缓发送。送达事件会通过 webhook 返回,并带有同一 reference,因此您的订单系统可以记录客户已收到通知。
- 流量类型
- 事务型
- API 调用
- 每个事件调用一次
POST /v1/messages,夜间批处理则使用/batch - 追踪
reference会在响应和 webhook 中原样返回- 分组
- 每种通知类型使用一个
campaign标签 - 长度
- 一到两个分段;如有链接,使用自有域名
- 历史记录
- 每条短信的报告保留 90 天
推荐设置
02使用流程
从零开始,只需 4 步即可送达。
-
01接入事件
在您的系统将订单标记为已发货或将付款标记为已收款的位置添加 API 调用。将订单号用作 reference,并纳入幂等键。
-
02一次写好短信文本
品牌、事实、下一步。例如:“ACME:订单 4821 已发货。追踪:acme.com/t/8fK2”。这段中文使用 Unicode,应控制在一个分段内。
-
03记录结果
针对订单存储 delivered 或 failed 状态。如果通知因号码未知而失败,这就是一个应当显露出来的客户数据问题。
-
04按类型查看
群发任务标签会在报告中将配送、收据和警报分类汇总,因此某一类型的数据下降会清晰可见。
03关键事项
事务型短信应包含什么
如果客户因自己执行的某项操作而预期收到通知,该通知就是事务型通知。它陈述一个事实,最多再指出可到何处查看详情。一旦通知中包含优惠,就属于营销内容,需要获得同意并遵守静默时段;如果仍将其标记为事务型,还会危及线路。请将这两类流量分开:使用不同的模板和不同的群发任务标签。
请使用自有域名上的链接。公共短链接是短信中最容易被过滤的模式,还会隐藏客户正在寻找的品牌。
04实际操作
在您这一侧确保可靠性
发送时使用根据事件生成的 Idempotency-Key,例如 order-4821-shipped。如果您的任务崩溃后重新运行,API 会返回原始响应,客户只会收到一条短信,而不是两条。收到 429 和 5xx 响应时采用退避策略重试;其他 4xx 响应绝不要重试,而应修正问题。
对于付款提醒等夜间批处理,批量端点可接收 每次 API 请求最多 1,000 条消息,并列出每个被拒绝行及其原因,因此一个错误号码不会导致整次处理失败。
06有效的消息示例
查看它在手机上的显示效果,以及请求中的写法。
一个事实、一个日期和一个自有域名链接,全部放在一个分段内。
curl https://api.smsmeteor.com/v1/messages \
-H "Authorization: Bearer $SMSMETEOR_KEY" \
-H "Idempotency-Key: order-4821-shipped" \
-H "Content-Type: application/json" \
-d '{
"to": "+447700900123",
"from": "ACME",
"text": "ACME:订单 4821 已发货,将于周四送达。追踪:acme.com/t/8fK2",
"window": { "quiet_hours": "bypass" },
"campaign": "shipping",
"reference": "order-4821"
}'07常见问题
我们常见的三个错误,以及避免方法。
在收据中加入优惠
这会使短信变成营销内容。请将促销放在单独的群发任务中,并取得同意、遵守静默时段。
公共短链接
它比任何其他模式都更容易被过滤。自有域名上的短路径占用的字符数相同。
短信中没有 reference
缺少 reference,就无法将送达事件与触发该事件的订单对应起来。
09常见问题解答
订单、付款和账户通知:常见问题。
事务型通知是否需要事先取得同意?
这类通知源于客户关系:订单确认或安全警报不需要营销同意。加入促销内容就会改变其性质,因此请确保通知只提供信息。
可以在夜间发送通知吗?
可以,但要使用事务型标记(将 window.quiet_hours 设为 bypass)。它只能用于客户预期收到的短信;以这种方式发送促销内容违反可接受使用政策。
如何知道客户是否收到了短信?
请注册 webhook:message.delivered 和 message.failed 事件会带上您的 reference;如果失败,还会包含运营商给出的原因。在运营商只返回确认的地区,sent 是最终肯定状态,相关国家和地区页面会对此作出说明。
如果同一事件被处理两次怎么办?
发送同一个 Idempotency-Key,API 会在 24 小时内返回原始响应,不会再次发送短信。
能否通过一套集成向多个国家和地区发送通知?
可以。系统会根据号码识别目的地,按该国家或地区公布的费率计价,并使用当地规则允许的发件人。您的代码无需进行任何更改。
有最低发送量吗?
没有。每条通知均按公布的费率计为一条短信。没有月费,也无需签订合同。
