Skip to main content

Inicialmente o tema deste assunto seria uma pergunta, porem, consegui resolver e como nao achei nada explicando em detalhes deixo aqui caso alguem precise, ou seja, se vc tem uma automação e estar tendo bloqueios pois sua automação precisa de mais que 10segundos para retornar os dados entao este artigo é para vc.

 

Para contornar o problema do bloqueio de 10 seguntos tive que fazer a implementação assincrona aonde na automação dentro do manychat eu uso uma webhook apenas para ser o gatilho e coletar o User_ID e a Mensagem. Apartir dai fiz a implementação dentro do meu N8N e fiz os seguintes passos:

1webhook node > 2Set node > 3http request to flowise > 4http request to manychat Api

 

1- recebo os dados da webhook coletados dentro da automação do manychat

2- seleciono e armazeno apenas o ID do usuario e a Mensagem enviada por ele.

3- Faço uma requisição http para o meu flowise auto-hospedado e ali ele pode esperar o tempo que quiser para trazer a informação, uma vez que este nó foi processado o output é enviado para o estagio seguinte.

4- faço uma requisição para a api do manychat seguindo a estrutura CURL que deixarei abaixo para enviar a mensagem para a pessoa na automação

curl -X 'POST' \
'https://api.manychat.com/fb/sending/sendContent' \
-H 'accept: application/json' \
-H 'Authorization: Bearer xxxxxxxxxxxxxxxxxxxxxxxxxx' \
-H 'Content-Type: application/json' \
-d '{
"subscriber_id": xxxxxxxxxxxxx,
"data": {
"version": "v2",
"content": {
"messages": [
{
"type": "text",
"text": "teste de envio por API"
}
]
}
}
}'

Estava procurando isso há horas!! kkk bom de mais, faço um complemento, colocar o canal que quer enviar e se o usuário não tiver enviado nenhuma mensagem ainda, tem que colocar a message_tage, a minha ficou assim:

{
    "subscriber_id": xxxxx,
    "message_tag": "ACCOUNT_UPDATE",
    "data": {
        "version": "v2",
        "content": {
            "type": "whatsapp",
            "messages": [
                {
                    "type": "text",
                    "text": "teste de envio por API"
                }
            ]
        }
    }
}

 


Estou chamando essa API recebo uma mensagem de sucesso como retorno, mas a mensagem não chega..

Já conteceu isso com vc?

Ela funciona pra WhatsApp e Direct do IG?

{

   "subscriber_id":xxx,

   "message_tag": "ACCOUNT_UPDATE",

   "data":{

      "version":"v2",

      "content":{

         "messages":[

            {

               "type":"text",

               "text":"teste de envio por API, ok"

            }

         ]

      }

   }

}

retorno:

{

    "status": "success"

}


Eu também estou com o mesmo problema. Recebo o status de sucesso mas a msg não é enviada via Whatsapp


O meu está funcionando da seguinte forma:

  // Enviar a mensagem pelo ManyChat
  const response = await fetch('https://api.manychat.com/fb/sending/sendContent', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer seu token'
    },
    body: JSON.stringify({
      "subscriber_id": "id do contato",
  "data": {
      "version": "v2",
      "content": {
        "type": "whatsapp",
        "messages": [
          {
            "type": "text",
            "text": mensagem
          }
        ]
      },
      "message_tag": "ACCOUNT_UPDATE"
      }
    })
  });


O meu está funcionando da seguinte forma:

  // Enviar a mensagem pelo ManyChat
  const response = await fetch('https://api.manychat.com/fb/sending/sendContent', {
    method: 'POST',
    headers: {
      'Content-Type': 'application/json',
      'Authorization': 'Bearer seu token'
    },
    body: JSON.stringify({
      "subscriber_id": "id do contato",
  "data": {
      "version": "v2",
      "content": {
        "type": "whatsapp",
        "messages": [
          {
            "type": "text",
            "text": mensagem
          }
        ]
      },
      "message_tag": "ACCOUNT_UPDATE"
      }
    })
  });

O meu também aparece como sucesso porém não envia o audio ao whatsapp. Pode explicar por favor como conseguiu?


Eu também estou com o mesmo problema. Recebo o status de sucesso mas a msg não é enviada

 


@Felipe.martins checa que esteja mandando no canal correto


@Gustavo Boregio segue abaixo o JSON que estou usando para fazer o envio da mensagem.
https://api.manychat.com/fb/sending/sendContent - Url que está sendo usada
{
  "subscriber_id": "", 
  "data": {
    "version": "v2", 
    "content": [
      {
        "type": "template",
        "template_name": "automacao_parou",
        "language": "pt_BR",
        "message_tag": "ACCOUNT_UPDATE",
        "components": [
          {
            "type": "body",
            "parameters": [
              {"type": "text", "text": "{{ $json.data.name }}"},
              {"type": "text", "text": "{{$json.data.whatsapp_phone}}"},
              {"type": "text", "text": "{{ $json.data.tags[0].name }}"}
            ]
          }
        ]
      }
    ]
  }
}


Ok blz ​@Felipe.martins 

Aqui te deixo a documentação:

https://manychat.github.io/dynamic_block_docs/channels/

Da uma olhada aí, tem que seguir exatamente o formato na documentação - e o seu formato não está seguindo.

Não da pra confiar na IA para temas relacionados com a API do Manychat ;)

Tem que fazer ‘old school’ e guiarse pela documentação ;)


@Gustavo Boregio A ideia é enviar um template de mensagem, tem ideia de como poderia fazer isso?
Passei esse meu json no Swagger e me retornou sucesso, por isso coloquei ele no n8n.


@Gustavo Boregio Se puder, gostaria que me passasse o JSON correto para essa automação


@Felipe.martins não é possível passar templates pela API.

Para isso, sugiro usar o método sendFlow da API, e configurar o template na automação.


@Gustavo Boregio Já fiz isso e o retorno foi o mesmo, sucesso no n8n porém nada de chegar a mensagem 


@Felipe.martins checa a documentação e que vc esteja fazendo tudo correto.

Esse setup funciona, já fiz várias vezes. 100% de certeza que tem alguma parte que não está correta e por isso falha.