如何将sendgrid webhook sg_message_id与发送邮件关联?

时间:2015-11-12 04:32:19

标签: webhooks sendgrid

Sendgrid webhook有sg_message_id 但是,发送邮件时Web API v2的响应没有sg_message_id。 实际上,只有消息只显示success或失败。

那么,我如何关联已发送邮件和webhook回调?

我已经在SO中检查了过去的问题,但它没有为此提供解决方案。

谢谢。

3 个答案:

答案 0 :(得分:19)

您可以使用唯一参数。获取您的唯一ID(如主键),并在发送电子邮件时将其发送给sendgrid API。你会在webhook活动中找回它。

https://sendgrid.com/docs/API_Reference/SMTP_API/unique_arguments.html

答案 1 :(得分:11)

编辑:最佳做法似乎是使用custom arguments(请参阅documentation)。从文档中可以看出这一点(截至今天)。

在Web API v3中,响应包含一个特殊标题X-Message-Id(请参阅https://sendgrid.com/docs/Glossary/x_message_id.html)。

稍后可以与webhook中的sg_message_id匹配:https://sendgrid.com/docs/Glossary/message_id.html

文档没有说清楚,但X-Message-Id标题实际上不等于sg_message_id,但它是sg_message_id的前缀。

例如:

  • X-Message-Id = "MUvGg3V1ThOu3oe8eRqFrA"
  • sg_message_id = "MUvGg3V1ThOu3oe8eRqFrA.filter0001p2iad2-21183-5AF0BD9B-E.0"

答案 2 :(得分:1)

发送电子邮件的Web APIv2调用仅响应 {message:"成功"} 答案,但 sg_message_id 不是在那时生成。 API调用答案只是确认电子邮件已发送到SendGrid进行处理。

电子邮件将发送到SendGrid,并在那里收到通过Event Webhook帖子提供的 sg_message_id 值。