我有一个 sendgrid 帐户,其中包含 7 天的电子邮件历史记录。 我尝试使用 api 命令获取这些:
var sendgridtask = sendgridclient.RequestAsync(method: SendGrid.SendGridClient.Method.GET, urlPath: "messages?limit=10");
但这给出了响应:
{"errors":[{"message":"authorization required"}]}
我猜 api 密钥不正确,但是当我尝试执行命令时:
var sendgridtask = sendgridclient.RequestAsync(method: SendGrid.SendGridClient.Method.GET, urlPath: "suppression/bounces/" + email);
它不会给出任何错误并响应正确的信息。 我检查了 api 密钥,它具有完全访问权限。
我也尝试过:
sendgridclient.AddAuthorization(new KeyValuePair<string, string>("Authorization", $"Bearer {apiKey}"));
但这给出了相同的响应
你知道我做错了什么吗?
已经从 SendGrid 得到答复:
不幸的是,为了访问电子邮件活动源 API,您必须购买额外的电子邮件活动历史记录。
或者您可以使用我们的事件网络挂钩来进行您的活动。 https://sendgrid.com/docs/for-developers/tracking-events/getting-started-event-webhook/
因此,我们的许可证包含的历史记录似乎只能从 SendGrid 网站访问,而不能从没有附加许可证的 API 访问。
如果我有完整的订阅密钥,那么还需要购买额外的许可证。请确认。