Как авторизовать Sid и токен учетной записи Twilio в коде Zapier - PullRequest
0 голосов
/ 21 октября 2019

В настоящее время пытаюсь создать сообщение WhatsApp, которое будет отправлено с помощью этого пользовательского кода Javascript на Zapier, показанного через Twilio API. Он успешно обращается к twilio, но возвращает «Ошибка аутентификации - учетные данные не предоставлены».

var messagesUrl = "https://api.twilio.com/2010-04-01/Accounts/<accountSID>/Messages.json";
var payload = {
 "To": "whatsapp:<tonumber>",
 "Body" : "Hey This is a test",
  "From" : "whatsapp:<fromnumber>"
};
 var options = {
 "method" : "post",
 "payload" : payload
};

options.headers = {
 "Authorization" : "Basic <accountsid>:<accounttoken>"
};
fetch(messagesUrl, {options, body: JSON.stringify(payload)})
 .then(function(binaryResponse) {
  return binaryResponse.json();
})
.then(function(jsonResponse){
  callback(null, {result: jsonResponse});
}).catch(callback);

Как лучше всего просто отправить текст подтверждения на WhatsApp для потенциальных клиентов на Zapier? Заранее спасибо

Ответы [ 2 ]

2 голосов
/ 21 октября 2019

fetch принимает объект options в качестве второго аргумента. Вы сейчас делаете:

fetch (messagesUrl, {
  options: {
    method: 'post',
    payload: payload,
    headers: {
      Authorization: '...'
    }
  },
  body: JSON.stringify(payload)
}) // ...

У вас не должно быть вложенного option объекта. Предполагая, что вещи twilio настроены правильно (я понятия не имею), это должно работать:

fetch (messagesUrl, {
  method: 'post',
  payload: payload, // probably remove this, it's not part of the syntax (see below)
  headers: {
    Authorization: '...'
  }
  body: JSON.stringify(payload)
}) // ...

все параметры, которые вы можете передать второму аргументу: https://developer.mozilla.org/en-US/docs/Web/API/WindowOrWorkerGlobalScope/fetch#Syntax

0 голосов
/ 29 октября 2019

Спасибо за вашу помощь, в итоге я решил эту проблему с помощью гораздо более простого метода пользовательского веб-хука POST, я его слишком усложнил. Подробная информация о том, как я сделал это для всех, кто хочет отправить сообщения Whats-App через Twilio на Zapier. Ниже:

Метод

Post

URL

https://api.twilio.com/2010-04-01/Accounts/<accountSID>/Messages.json

Данные

To=whatsapp:%2B<toNumber>&From=whatsapp:%2B<fromNumber>&Body=Put your message body here

Примечание: + + вашего номера E.164 будет объединен, следовательно,% 2B заменит его

Basic Auth

<AccountSID>|<AccountToken>

Заголовки

Content-Type | application/x-www-form-urlencoded
...