Respond to Whatsapp user not working

Describe the problem/error/question

I am using this workflow template from n8n:

When testing, everything works except the last node “Respond to Whatsapp user”

What is the error message (if any)?

I get this error:

Bad request - please check your parameters

Recipient phone number not in allowed list

However, my phone number is included in the list of allowed phone numbers. I do get messages when I send them directly from the WhatsApp Business API, but doesn’t seem to get it

Please share your workflow

Share the output returned by the last node

{
“errorMessage”: “Bad request - please check your parameters”,
“errorDescription”: “Recipient phone number not in allowed list”,
“errorDetails”: {
“httpCode”: “400”
},
“n8nDetails”: {
“nodeName”: “Respond to User”,
“nodeType”: “n8n-nodes-base.whatsApp”,
“nodeVersion”: 1,
“resource”: “message”,
“operation”: “send”,
“itemIndex”: 0,
“runIndex”: 0,
“time”: “12/11/2024, 18:04:23”,
“n8nVersion”: “1.66.0 (Cloud)”,
“binaryDataMode”: “filesystem”,
“stackTrace”: [
“NodeApiError: Bad request - please check your parameters”,
" at Object.sendErrorPostReceive (/usr/local/lib/node_modules/n8n/node_modules/n8n-nodes-base/dist/nodes/WhatsApp/MessageFunctions.js:170:15)“,
" at RoutingNode.runPostReceiveAction (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/RoutingNode.js:214:33)”,
" at RoutingNode.postProcessResponseData (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/RoutingNode.js:321:45)“,
" at /usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/RoutingNode.js:429:164”,
" at processTicksAndRejections (node:internal/process/task_queues:95:5)“,
" at RoutingNode.makeRoutingRequest (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/RoutingNode.js:429:28)”,
" at async Promise.allSettled (index 0)“,
" at RoutingNode.runNode (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/RoutingNode.js:164:35)”,
" at Workflow.runNode (/usr/local/lib/node_modules/n8n/node_modules/n8n-workflow/dist/Workflow.js:773:23)“,
" at /usr/local/lib/node_modules/n8n/node_modules/n8n-core/dist/WorkflowExecute.js:707:51”,
" at /usr/local/lib/node_modules/n8n/node_modules/n8n-core/dist/WorkflowExecute.js:1137:20"
]
}
}

Information on your n8n setup

  • **n8n version: web version
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • **Running n8n via (Docker, npm, n8n cloud, desktop app): website
  • **Operating system: Windows 10

It looks like your topic is missing some important information. Could you provide the following if applicable.

  • n8n version:
  • Database (default: SQLite):
  • n8n EXECUTIONS_PROCESS setting (default: own, main):
  • Running n8n via (Docker, npm, n8n cloud, desktop app):
  • Operating system:

n8n version: 1.66.0
Database (default: SQLite):
n8n EXECUTIONS_PROCESS setting (default: own, main): not sure what this is
Running n8n via (Docker, npm, n8n cloud, desktop app): web app
Operating system: Windows 10

Hi @Pavel_Ramirez

Thanks for posting here and welcome to the community! :raised_hands:

How have you added the phone number? i.e. which format?
+CountryCodePhoneNumber ?

Hello, apparently the issue was the phone number. I had to put the phone number as fixed with the correct formant into the last node instead of the json equivalent.

Now the flow “works”, because when I send a message I only get:

“It looks like your message might not have come through correctly. Please try sending it again with the details you’d like to know or discuss.”

I seems that the issue starts in the summarize node, but I am not sure how to fix this.

thanks in advance

Never mind, found a solution for the text.

in the “Text” field the expression should look like this:

{{ $json.text.body }}

This fixed it and now it works getting text, images and audio.

The only part is not yet working is the video capture. When I execute the flow, I get an empty array in the “Capture Frames” node.

Any idea how to fix this, is the only option that is not yet working with this flow, thanks!

Hey @Pavel_Ramirez

Just a note on the Video Capture Frames, this unfortunately only works on self-hosted n8n. This is due to differences in how the python code node works between self-hosted and cloud.

To parse video messages on the cloud version, you’ll need to either

  1. Find another service that can split videos into frames and use that instead
  2. Use a Multimodal Model that accepts video eg. Gemini - Here are the docs Explore vision capabilities with the Gemini API  |  Google AI for Developers

Here’s an example parsing video using Gemini API.

  • Good to note, this approach is superior to the “capture frames” because the Gemini API supports parsing video audio as well.
1 Like

This topic was automatically closed 7 days after the last reply. New replies are no longer allowed.