Skip to main content

Hi everyone 👋

I’ve been testing an automation where n8n connects to the ManyChat API using an HTTP Request node to send a message via Facebook Messenger.
However, my request keeps failing with the following error:

400 - {"status":"error","message":"Validation error","details":{"messages":[{"message":"Subscriber does not exist"}]}}

🔧 Setup details:

  • Platform: n8n Cloud

  • Node: HTTP Request

  • Method: POST

  • URL: https://api.manychat.com/fb/sending/sendContent

  • Headers:

    • Authorization: Bearer <my_page_access_token>

    • Content-Type: application/json

  • Body (JSON):

{
  "subscriber_id": "{{ $('Webhook').item.json.body.contact_id }}",
  "data": {
    "version": "v2",
    "content": {
      "type": "messenger",
      "messages": [
        {
          "type": "text",
          "text": "Машаа Elite Pool Billiard Club-д урьж байна..."
        }
      ]
    }
  }
}

 

 

⚠️ What happens:

The workflow runs successfully until the HTTP Request node, where I get the 400 Validation error above.

I confirmed that the subscriber_id (e.g. 25193238166929150) is coming from ManyChat’s webhook payload, but the API says the subscriber doesn’t exist.

I also noticed from a ManyChat community post

Hey ​@godblesskh if you’re sending a Messenger message, you shouldn’t use the ‘type’ option.

Here’s the documentation for MESSENGER:

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

And here’s the docs for IG/WhatsApp/Telegram:

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

 

Now, is this subscriber a Messenger contact? Can you do a simple /fb/subscriber/getInfo with this subscriber id?