为了账号安全,请及时绑定邮箱和手机立即绑定

无法取消预定的 SendGrid 电子邮件(带有 batch_id)

无法取消预定的 SendGrid 电子邮件(带有 batch_id)

Go
幕布斯6054654 2022-11-23 13:57:09

使用 SendGrid 安排电子邮件,但我立即取消并删除(查看 scheduled_events 显示状态实际上已取消)。但是,电子邮件仍会发送给用户。

我知道它说“您可以通过将 batch_id 传递到“取消或暂停预定发送”端点,在预定发送时间之前最多 10 分钟取消或暂停与批次 ID 关联的所有邮件/发送请求。” ( https://docs.sendgrid.com/api-reference/cancel-scheduled-sends/delete-a-cancellation-or-pause-from-a-scheduled-send )

但在这个示例代码中,我将时间设置为 20 分钟,并尝试了 90 分钟或更长时间,但电子邮件仍然送达。最后,我尝试在删除和不删除电子邮件(request4)的情况下做同样的事情。

我联系了他们的支持人员,但尚未收到回复,我想知道我是否在这里做了一些不寻常或错误的事情。

顺便说一句,我检查了状态代码和响应——它们看起来都很好(添加了描述打印状态的注释)


查看完整描述

1 回答

?
ITMISS

TA贡献1540条经验 获得超8个赞

当您批量发送电子邮件时,您可以通过取消该批次来取消这些电子邮件。但是,我认为您在这里所做的是通过删除批次来取消取消。

从文档

取消批处理后,与该批处理相关的所有消息都将保留在您的发送队列中。当达到它们的 send_at 值时,它们将被丢弃。

当一个批次暂停时,与该批次关联的所有消息都将保留在您的发送队列中,即使它们的 send_at 值已过。这意味着您可以删除暂停状态,一旦暂停被删除,您预定的发送将被交付。任何超过 72 小时且具有暂停状态的消息都将被丢弃为已过期。

批处理保持取消/暂停状态,但消息保留在队列中。如果您删除该批次,则消息仍在队列中并且不再知道它们已被取消。

要解决此问题,我相信您需要在第三次请求时停止上述代码。不要执行请求 4(删除批处理),您的消息应该无法按要求发送。


查看完整回答
反对 回复 2022-11-23

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信