邮件状态报告回调
请求URL
接入方联系工作人员提供回调地址,用于接收邮件送达状态,此处需要联系开发(对接群)进行验证配置,确保访问正常;
请求超时时间5秒,异常重试推送5次,创建时间以5的幂次方分钟执行回调即50 51 52 53 54
请求方式
POST
公共参数
请求头 | 字段类型 | 是否必填 | 限制 | 值 |
---|---|---|---|---|
Content-Type | String | Y | application/json |
请求参数
参数 | 类型 | 是否必填 | 限制 | 描述 | 示例值 |
---|---|---|---|---|---|
results | List result对象 | Y | 参考result对象 |
如果需要幂等处理,batch_id+email做唯一键
result对象
参数 | 类型 | 是否必填 | 描述 | 示例值 |
---|---|---|---|---|
batch_id | String | Y | 请求业务ID,相同值只处理一次 | 8064284299267792899 |
String | Y | 批量请求中的单个邮箱 | ||
deliver_status | String | Y | delivery--邮件送达 initial_open--邮件打开 click--邮件点击 delay--延迟发送(供应商原因) bounce--邮件失败 spam_complaint--垃圾邮件投诉 list_unsubscribe--退订列表退订 link_unsubscribe--链接退订 | delivery--邮件送达 |
message | String | N | 状态消息 | 邮件送达 |
biz_param | JSON | N | 请求时携带的自定义业务参数,回调时携带,JSON格式;传什么回调返回什么,空值为空 | {"source":"open_api"} |
target_link_url | String | N | 单击事件的链接的URL,(仅点击事件存在) | https://www.mambasms.com |
请求JSON格式示例
{
"results": [{
"batch_id": "8147529114883244033",
"biz_param": "oookk",
"deliver_status": "delivery",
"email": "[email protected]",
"message": "delivery"
}]
}
特殊说明:
1.一个收件的回调可能存在多次,例如,邮件在A时刻打开后,再B时刻以及以后再次打开,此时有可能会推送两次以上打开推送记录;
2.邮件的状态并不是一个终态,因为邮件可以被重复打开操作;业务处理方面,邮件是否送达状态中,除bounce均表示邮件已经送达;bounce的特殊情况为送达了,但被收件人退回或者进入垃圾邮箱等情况
3.送达失败原因可能有多种,常见的进入垃圾邮箱,自动屏蔽接收,发件域问题等
4.delay属于正常状态,如 1.邮件发送的大批量调度此时会存在延迟情况 2.delay的异常情况,推送delay之后没有其他状态推送,少量delay的可能一直没有触发(供应商未触发邮件发送等特殊情况,此场景无法控制,在查询供应商发送状态没有后续后,则表示发送失败)3.dealy景可能遇到得到情况,服务发布,服务请求拒绝导致的回调异常等特殊情况,若一直处于delay状态,联系对接群,查一下原因;4.delay状态,也有供应商未及时返回情况,此状态需要提供邮箱查询状态
5.邮件常见未送达情况:邮箱拒收,黑名单、发件域问题导致发送失败率较高(联系销售,可以通过供应商的某些办法实现)