Send and answer WhatsApp messages from n8n
n8n connects the tools a business already uses: forms, spreadsheets, shops, CRMs and AI models. With Threadwire, WhatsApp becomes one more step in those workflows, on your own number. This post shows both directions: sending a message from a workflow, and answering the messages people send you.
You need a Threadwire account with a linked number, and an API key from your panel (Developers → API keys).
Option 1: the Threadwire node (self-hosted n8n)
- In n8n, open Settings → Community nodes → Install and enter
n8n-nodes-threadwire. - Add a Threadwire API credential, and paste your API key.
- Add the Threadwire node to a workflow, and choose what it does.
The node sends messages and lists them. It lists your instances, and checks whether a phone is on WhatsApp. It lists your chats, or only those waiting for a reply, and lists your groups.
n8n Cloud accepts only community nodes that n8n has verified, and this one is not yet. On n8n Cloud, use option 2.
Option 2: workflows ready to import (any n8n)
In n8n, choose Import from URL and paste one of these addresses. Each workflow explains its setup in a note beside it, and needs nothing installed.
- Send a WhatsApp message from any workflow:
https://threadwire.net/downloads/n8n/threadwire-send.json - Answer WhatsApp messages with your own steps, such as looking up an order or asking an AI:
https://threadwire.net/downloads/n8n/threadwire-reply.json - Save incoming messages to Google Sheets:
https://threadwire.net/downloads/n8n/threadwire-to-google-sheets.json
Receiving messages
Incoming messages reach n8n through its own Webhook node.
- Add a Webhook node, and copy its production address.
- In your Threadwire panel, set that address as your webhook URL (Developers → Webhooks).
- Lock the address. On the same page, set an authentication header: a name and a secret value of your own. In the Webhook node, choose Authentication → Header Auth with the same name and value.
- After the Webhook node, keep only the messages: filter on
typeequalsmessage.received.
Leave the list of events on the Webhooks page as it is, and filter inside n8n instead. That list is shared by everything on your account, including delivery updates.
No public address for your n8n? Poll instead: a Schedule Trigger every minute, then an HTTP Request to GET /v1/events. The tools guide shows how.
Keep your number safe
A workflow can send far faster than a person. Let people write first, and answer them: replies are what WhatsApp expects from a business. If a workflow writes first to people, turn on your number's sending protection on its Protection tab. Then every message is paced and limited the way a person would send it.
Try it on your own number: link it in your panel, and send your first message from n8n today.