SendGrid 403 Response для / v3 / contactdb / получателей - необходимы разрешения - PullRequest
0 голосов
/ 09 июля 2019

Какие разрешения мне нужны или что я делаю не так с этим API-вызовом SendGrid?

Я пытаюсь опубликовать нового получателя (/ contactdb / получателей) для отправки сетки, но получаю ответ 403:

Я получаю это даже при вызове API из SendGrid Explorer

Контакты API - Получатели

  • POST -> Добавить получателей
{
  "errors": [
    {
      "field": null,
      "message": "access forbidden"
    }
  ]
}

Это заставляет меня думать, что мой ключ API не имеет достаточных разрешений, но он имеет полный доступ.

Вот и мой код клиента.

require("dotenv").config();
const client = require("@sendgrid/client");

exports.handler = function(event, context, callback) {
  const body = JSON.parse(event.body);
  const email = body.email;

  if (!process.env.SENDGRID_API_KEY) {
    callback("No API Key");
  }

  client.setApiKey(process.env.SENDGRID_API_KEY);
  const request = {
    method: "POST",
    url: "/v3/contactdb/recipients",
    body: JSON.stringify([{ email }])
  };

  client
    .request(request)
    .then(([response, body]) => {
      // console.log(response.statusCode);
      // console.log(body);
      callback(null, response, body);
    })
    .catch(error => {
      // console.log(JSON.stringify(error.response.body.errors));
      callback(error);
    });

};

1 Ответ

0 голосов
/ 13 июля 2019

За поддержку:

Мы совсем недавно выпустили «Новые маркетинговые кампании». опыт и конечные точки изменились с нашей "Legacy Marketing Кампания».

Попробуйте эту конечную точку:

https://api.sendgrid.com/v3/marketing/contacts

Я вытащил это из нашей документации здесь:

https://sendgrid.api-docs.io/v3.0/contacts/add-or-update-a-contact
...