您如何从SendGrid API获取实际的电子邮件传递响应状态?

时间:2020-09-03 20:01:13

标签: sendgrid sendgrid-api-v3

我正在使用SendGrid API v3(Python)从应用程序发送电子邮件。这些是包含附件(由应用程序动态生成的报告)的单收件人电子邮件。当应用程序发送电子邮件时,无论电子邮件是否实际成功发送,总是返回响应码202。

我的应用程序将所有响应代码记录为202,但是当我进入SendGrid活动供稿时,我会发现一些未送达的电子邮件(被阻止,退回等)。

在这一点上,我认为SendGrid API发送调用只是从其自己的SendGrid电子邮件服务器(202)返回响应代码,而不是从SendGrid服务器向收件人的电子邮件服务器返回响应代码。

问题是:您实际上如何获得使用SendGrid的API发送尝试发送的电子邮件的真实响应?

我的Python代码如下:

message = Mail(from_email=from_email,
               to_emails=email_address,
               subject=subject,
               html_content=html_content,
               plain_text_content=text_content
)

try:
    # Note that general exceptions should be caught by Sentry
    sg = SendGridAPIClient('SENDGRID_API_KEY')
    response = sg.send(message)
except SMTPRecipientsRefused:
    msg = 'Unable to send email to '
    msg += "'" + email_address + "'"

我缺少使用此API的一些关键方面吗?

0 个答案:

没有答案