What can the Whatsable n8n node send and receive?
Every Whatsable n8n node field: On new Incoming message event outputs, Send template and non-template inputs, Schedule conditions, and Update Contact.
This page is the field dictionary for the Whatsable community node on n8n — every unlocked trigger and action input/output you can map in a workflow. Use it when you already know you want n8n and need exact labels, types, and requiredness.
For connect steps, coexistence walkthrough, examples, and troubleshooting, use n8n overview.
Prerequisites
- Plan: n8n requires Pro or Agency (Bulk Message does not include integrations).
- WhatsApp number: Connected in Whatsable. Coexistence is supported — keep the WhatsApp Business app; phone replies can fire the trigger when outgoing is enabled.
- n8n node: Verified community package
n8n-nodes-whatsable(listing: n8n.io/integrations/whatsable). Search Whatsable in the n8n node library, or install withnpm install n8n-nodes-whatsableon self-hosted. - API key: From the Whatsable console API Keys page. Paste that key into the Whatsable credential (core product key — not a Meta Graph token).
Use the Whatsable Incoming & Outgoing Message credential type on the trigger when you need phone-app and inbox outgoing events, not only inbound.
At a glance
| Kind | Exact name in n8n / console |
|---|---|
| Trigger (instant) | On new Incoming message event (node: Incoming/outgoing WhatsApp message Trigger) |
| Action · Resource Send Message | Send WhatsApp Message → product ops Send Message Template / Send Non Template Message (console: Send template via Whatsable / Send non-template via Whatsable) |
| Action · Resource Send Message | Schedule WhatsApp Message → same product ops (template or non-template) |
| Action · Resource Send Message | Manage Contact → product op Update Contact (console: Update recipient) |
All Notifyer/core paths use a Whatsable API key credential. When outgoing is enabled, the same trigger also fires for outgoing messages — filter with incoming_message.
Trigger: On new Incoming message event
Type: Instant · Node display name: Incoming/outgoing WhatsApp message Trigger · App: Whatsable
Fires when WhatsApp messages are received — and, with the incoming-and-outgoing credential, when they are sent. Outgoing events include replies typed in the WhatsApp Business app, the Whatsable inbox, and automations.
Configure inputs
For core Whatsable (Whatsable):
| Option | When to use |
|---|---|
| Whatsable Incoming Message | Inbound only |
| Whatsable Incoming & Outgoing Message | Inbound and outgoing (phone app, inbox, automations) |
Legacy Bot / Notifier credential types exist on the node for other products — this fields page documents the Whatsable options only.
POST (only option).
Immediately — respond as soon as the trigger fires. When Last Node Finishes — wait for the workflow to complete before responding.
Copy the trigger Production URL into the credential’s Production URL field when creating the Whatsable credential (see n8n overview).
Output fields — contact identity
The contact’s phone number (for example 14155552671). May arrive as a number rather than a string.
Unique internal ID for this contact (UUID).
Display name for this contact in Whatsable.
Comma-separated labels on the conversation (for example n8n, webhook-test).
Output fields — message data
Documented values on this page: text, audio, image, or document.
true when the contact sent a message to your business; false when your business sent a message to the contact.
On outgoing messages: "WhatsApp App" (phone app), a teammate’s name (inbox), or an automation/app name (n8n, Make, Zapier, API, bot). Empty or omitted on incoming messages.
true when a person sent the message (phone app or inbox); false when a bot or automation sent it.
Public URL of any attached file, or empty/null when there is none.
Present when the inbound message came from a Click-to-WhatsApp ad or post. Typically on the first inbound after the tap; later messages usually omit it. Nested keys:
| Key | Meaning |
|---|---|
source_type | "ad" or "post" |
source_id | Ad or post ID |
source_url | Where they tapped |
headline / body | Ad copy |
media_type | "image" or "video" |
image_url / video_url | Creative URLs |
ctwa_clid | Click ID for Meta Conversions API |
Persist ctwa_clid and source_id as soon as you see them. See also Incoming message — Click-to-WhatsApp ads.
Output fields — conversation history
JSON string of recent messages (about the last 20). Each item includes type (user / bot), content, timestamp, and content_type. Parse before iterating.
The most recent message from the contact.
The most recent message your business sent (human or automation).
Timestamp of the contact’s last message.
Timestamp of your business’s last message to this contact.
Flat, readable conversation history — useful for LLM prompts without parsing last_messages.
Output fields — AI context and automation
AI context note stored on this contact. Update it with Update Contact.
Automation instructions for the AI based on conversation events.
Use an IF or Switch node on incoming_message, send_by, and was_message_by_human to split incoming vs outgoing and human phone-app replies vs automations. For rapid multi-message bursts before an AI step, add a short Wait node so n8n can coalesce messages from the same number into one coherent run.
Action: Send WhatsApp Message (template or non-template)
App: Whatsable · Resource: Send Message · Operation: Send WhatsApp Message
Sends a WhatsApp message using the official WhatsApp API. After you pick the operation, choose Product Operation: Send Message Template (console / overview: Send template via Whatsable) or Send Non Template Message (console / overview: Send non-template via Whatsable).
Mode A — Send Message Template (to start conversation)
Use this to initiate a new conversation or reach out proactively. Requires a Meta-approved template.
Recipient with country code (for example +14155552671) or map from a previous node. Prefer digits with country code as shown in the live editor.
Select from your approved templates. If n8n switches the field to Expression mode on first open, click Fixed to return to the dropdown.
One field per template variable ({{1}}, {{2}}, … / Body 1, Body 2, …). Required when the template has variables. Media header URL and Visit Website URL appear when the selected template needs them.
AI / internal context about this contact. Stored on the contact — not sent to the recipient.
Labels to apply to this conversation.
Mode B — Send Non Template Message (person must write to you first)
Only inside Meta’s customer service window after the contact’s last inbound message. Outside that window, use an approved template.
Phone number with country code.
Text Message, Image Message, Video Message, Document Message, or Audio Message. Nested fields:
| Message Type | Nested fields |
|---|---|
| Text Message | Message Content (text, required); Enable Link Preview (boolean, optional) |
| Image Message | Image URL (url, required); Caption (text, optional) |
| Video Message | Video URL (url, required); Caption (text, optional) |
| Document Message | Document URL (url, required); Caption (text, optional); Filename (text, required) |
| Audio Message | Audio URL (url, required) |
Labels to apply to this conversation.
AI context note for this contact.
Testing this action sends a real WhatsApp message. Use a personal test number during setup. Media URLs must be publicly accessible.
Action: Schedule WhatsApp Message
App: Whatsable · Resource: Send Message · Operation: Schedule WhatsApp Message
Schedules a WhatsApp message for later (template or non-template product operation), with optional reply and label conditions so it can cancel or skip when the lead is already engaged.
Message fields are the same as Send WhatsApp Message (template or non-template, including phone, template/variables or message type, Note, and labels), plus the schedule and condition fields below.
When to send — Relative (delay from now)
Set Schedule Type : Relative or Specific to relative (off / false).
Choose only: 1, 2, 3, 4, 5, 10, 15, 20, 30, 60, 90, or 120.
Minutes, Hours, or Days.
When to send — Specific date and time
Set Schedule Type : Relative or Specific to specific (on / true).
Exact send time — map from a previous step or enter a fixed value.
Timezone for the scheduled time (global list in the n8n node).
Recipient Reply Status : Send Only If
Optional but recommended. Cancels or skips the scheduled send if the contact replies within the chosen rule.
| Condition label |
|---|
| Recipient Did Not Reply After My Last Message (recommended default) |
| Recipient Never Replied to Any of My Messages |
| Recipient Did Not Reply Within 20 Minutes After My Last Message |
| Recipient Did Not Reply Within 45 Minutes After My Last Message |
| Recipient Did Not Reply Within 3 Hours After My Last Message |
| Recipient Did Not Reply Within 6 Hours After My Last Message |
| Recipient Did Not Reply Within 12 Hours After My Last Message |
| Recipient Did Not Reply Within 24 Hours After My Last Message |
| Recipient Did Not Reply Within 48 Hours After My Last Message |
| Recipient Did Not Reply Within 72 Hours After My Last Message |
Label Status : Include or Exclude (optional)
Include — only send if the contact has this label at send time. Does Not Include — only send if they do not.
Label(s) evaluated when the scheduled send time arrives.
This is not a native drip builder inside Whatsable. Day-0 / day-3 / day-6 sequences are multiple n8n steps that each schedule one message. Whatsable sends each scheduled message; the sequence logic lives in n8n.
The live overview also shows an optional Schedule Message control on immediate Send flows. Prefer the dedicated Schedule WhatsApp Message operation when you need relative delay, reply conditions, or label conditions.
Action: Manage Contact → Update Contact
App: Whatsable · Resource: Send Message · Operation: Manage Contact · Product Operation: Update Contact
(Console module name: Update recipient)
Updates a contact in Whatsable — AI note and labels. Lookup is by phone.
Documented fields
Lookup key — choose from the loaded phone list or map an ID/expression. Creates or updates the contact for that number.
AI context note for this contact (name, email, preferences, language, and so on).
Labels to add. Whatsable conversation labels are the source of truth inside Whatsable.
Labels to remove. Remove All (when present in the remove list) clears every label on this contact.
Assign a teammate: Chat assignment is a product capability via Zapier / Make / API / keywords / AI. The n8n Update Contact fields documented on this page today are Phone Number Name or ID, Add a Note, and Add/Remove Label Names or IDs — confirm any assignee control in your live editor; do not invent a field key. Operator how-to: Chat assignment and Team inbox.
Limits and what this does NOT do
No native drip builder. Multi-day sequences use n8n (or Make / Zapier) schedule steps plus reply conditions — not a built-in drip product inside Whatsable.
No CRM ↔ Whatsable bidirectional label mirror. Add/Remove labels update Whatsable conversation labels. They do not sync Monday/Pipedrive (or other) CRM tags as one shared store.
Coexistence: Do not uninstall the WhatsApp Business app to “enable” API or n8n. Keep using the phone; those replies can still start workflows when outgoing is enabled.
- Bulk Message plan: no n8n / integrations — upgrade to Pro or Agency.
- Non-template sends only inside the customer service window after the contact’s last inbound; otherwise use a template.
- Group messaging via the Notifyer/core n8n path is not documented as LIVE on this fields page (group send on the node is a separate Whatsable Bot product path — omit as core LIVE).
- Do not invent trigger
message_typevalues beyondtext,audio,image, anddocument. - Do not invent location or sticker send types on n8n Notifyer operations.
- Typing-indicator dots are not a documented Whatsable automation claim.
- No documented Get delivery status search/action on the n8n node (unlike Zapier/Make) — do not invent one.
- Do not invent Whatsable numeric RPM on this page.
Related features and next steps
n8n overview
Connect, coexistence, examples, troubleshooting
Zapier fields
Parallel Zapier trigger/action field dictionary
Make fields
Parallel Make module field dictionary
Incoming message / CTWA
Webhook payload and Click-to-WhatsApp referral object
Also: Team inbox · Chat assignment · Plans.
FAQ
Does the n8n trigger fire when someone replies in the WhatsApp Business app?
Yes, when coexistence is enabled and you use Whatsable Incoming & Outgoing Message. The node may still be labelled On new Incoming message event. Filter on incoming_message (false), send_by (for example "WhatsApp App"), and was_message_by_human.
Can I build day-0 / day-3 / day-6 WhatsApp drips with Whatsable and n8n?
Yes, by chaining Schedule WhatsApp Message steps (and reply conditions) in n8n. Whatsable is not a native drip builder — the sequence logic lives in n8n.
Does Bulk Message include n8n?
No. n8n and other integrations require Pro or Agency.
Which fields does Update Contact document today?
Phone Number Name or ID, Add a Note, Add Label Names or IDs, and Remove Label Names or IDs. Do not invent an Assign field label for n8n.
Is there a Get delivery status action in n8n?
Not on the documented Whatsable n8n node surface for Notifyer/core. Use Zapier Get Delivery Status or Make Get delivery status if you need that lookup, or handle delivery via webhooks/API — do not invent an n8n delivery-status operation.