[Resolvido] Erro ao enviar comando da minha API para o chatbot

Bom dia,

Estou tentando implementar a solução sugerida aqui (enviar comando da minha API para o bot para registrar evento), mas recebo o seguinte retorno:

{
  "method": "set",
  "status": "failure",
  "reason": {
    "code": 35,
    "description": "The current session doesn't have the required permissions to send as the specified sender or to execute the requested action"
  },
  "id": "89c592fb-67ca-4fed-a8ba-1e70a411bdcb",
  "from": "postmaster@msging.net/#az-iris1",
  "to": "a364c6ae-b1bc-43e1-b568-43dea2f66686@msging.net"
}

Estou fazendo o envio da seguinte forma:

axios.post(
  'https://msging.net/commands',
  {
    id: uuid(),
    to: 'postmaster@analytics.msging.net',
    method: 'set',
    type: 'application/vnd.iris.eventTrack+json',
    uri: '/event-track',
    resource: {
      category: 'url-click',
      action: url
    }
  },
  {
    'Content-Type': 'application/json',
    'Authorization': 'Key ' + blipToken
  }
)

Alguma sugestão sobre o motivo do erro?
Obrigada!

1 Curtida

Olá, @JucilaineNogueira.

No retorno achei estranho esta propriedade do json:

O to deveria ser <id do bot>@msging.net
Confere se a variável blipToken ali está realmente enviando a chave que consta em “Configurações” / “Informações de conexão” do seu bot, no Portal do BLiP.

Também notei isso, @andre. Mas está correto sim, até coloquei a string copiada diretamente do BLiP agora pra ver se era algo assim, mas o erro continua o mesmo.

Bem estranho… Consegue enviar um retorno mais recente - de hoje de preferencia?

{
  "message": {
    "method": "set",
    "status": "failure",
    "reason": {
      "code": 35,
      "description": "The current session doesn't have the required permissions to send as the specified sender or to execute the requested action"
    },
    "id": "56eb6930-6105-11e9-a4d8-a7315c49886e",
    "from": "postmaster@msging.net/#az-iris4",
    "to": "61b39b38-412f-4b06-9c67-084f6245b3a6@msging.net"
  },
  "level": "error"
}

@andre, problema resolvido, foi falha minha mesmo :slight_smile:
Tava enviando o terceiro parâmetro do axios errado.

De qualquer forma, obrigada!

Entendi aqui também: se o header Authorization (que foi o que vc corrigiu ai) não for enviado, acontece isto, realmente.

No futuro é bom lançar um erro HTTP 401, para deixar mais claro…

1 Curtida