首页 > 解决方案 > 节点 js:sendgrid '访问被禁止'

问题描述

我正在使用 sendgrid (javascript) 将新联系人添加到我的列表中。在营销中。

var request = require("request");

  var options = { method: 'PUT',
    url: 'https://api.sendgrid.com/v3/contactdb/lists/193029b7-0b8b-4c0c-948d-47d09a157542/recipients',
    headers: { authorization: 'Bearer myapi' },
    body: '{"contacts":[{"email": "myemail@gmail.com","unique_name":"hello"}]}' };

  request(options, function (error, response, body) {
    if (error) throw new Error(error);

    console.log(body);
  });

但随后我收到消息“禁止访问”。

我使用了错误的网址吗?(API 令牌设置为管理员所有访问权限。)

谢谢!

标签: node.jsnpmsendgrid

解决方案


看起来这里发生了一些事情。

根据文档,Contact API 中没有接受该方法的端点PUT

在检查了我们自己的实现之后,看起来你打算做的事情也有问题。

请参阅将多个收件人添加到列表的文档:

POST https://api.sendgrid.com/v3/contactdb/lists/{list_id}/recipients HTTP/1.1

Request body:
[
  "recipient_id1",
  "recipient_id2"
]

为了使用该方法,您需要首先创建用户并检索他们的收件人 ID。

POST https://api.sendgrid.com/v3/contactdb/recipients HTTP/1.1
[
  {
    "email": "myemail@gmail.com",
    "unique_name":"hello"
  }
]

查看发布的链接以获取有关其使用和响应的更多信息。


推荐阅读