WASync · Developers

n8n

Install the community node, create the credential, build a first workflow, and understand the single-webhook caveat before you add a trigger.

WASync ships a community node for n8n, published on npm as n8n-nodes-wasync. It wraps the same REST API these docs describe, so anything the node does you can also do with curl — and anything it does not do yet, you can.

Before you start: an account and a connected number

The node talks to your WASync account. If you do not have one yet, create it first — it takes a minute and costs nothing:

Create a free developer account

Go to developers.wasync.app/register — name, email, password. Every new account comes with its own workspace: the place your WhatsApp numbers and API keys live.

Get a WhatsApp number into that workspace

Two situations:

  • You already use WASync inside Bitrix24 — sign in with the same email you use in Bitrix24. Your portal appears as a workspace and its connected numbers are ready to use. Sending through the API needs the API add-on on that number ($12 per number per month; without it the node's send step answers addon_required).
  • You are new to WASync — connect a number to your own workspace with one API call that returns a QR code (or a pairing code you type into WhatsApp). The exact steps are in Connect a WhatsApp number. Every number starts with a 7-day free trial; plans are WAPP $19 or WABA $29 per number per month, USD.

Create an API key

Sign in and open developers.wasync.app/keys. Pick the workspace, give the key a name, tick the scopes below, create it — and copy it immediately, it is shown once. This is the value the n8n credential asks for.

One account, many numbers

The node's Connection → List operation shows every number the key can reach. If the list is empty, the workspace has no connected number yet — go back to step 2.

1. Install the community node

In your n8n instance, go to Settings → Community nodes → Install, enter the package name and confirm:

n8n-nodes-wasync

Community nodes are available on self-hosted n8n and on n8n Cloud plans that allow them. After installing, the WASync and WASync Trigger nodes appear in the node panel.

2. Create the credential

Add a credential of type WASync API. It takes a single field: your API key, which is sent as Authorization: Bearer ….

Paste the key you created above (see Before you start) — it is shown once. Give it only the scopes the workflow needs:

  • listing connections and reading messages → whatsapp.read
  • sending and marking read → whatsapp.send
  • the trigger → whatsapp.events

See Scopes.

3. Your first workflow

The simplest useful workflow is two nodes: a manual trigger and a send.

Find the connection id. Add a WASync node, choose resource Connection → operation List, and run it. Copy the id of the number you want to send from.

Send a message. Add a second WASync node, resource Message → operation Send. Fill in:

FieldValue
connectionIdthe id you just copied
tointernational digits, no + — e.g. 40712345678
textthe message body

Execute. The node returns the message id you can join on later — see the two ids.

Operations the node supports

ResourceOperationParameters
ConnectionList
MessageSendconnectionId, to, text
MessageGet ManyconnectionId, limit
MessageMark as Read

Text sending only. Sending a WhatsApp template and checking whether a number is on WhatsApp are not available through the API today, so the node does not offer them — do not build a workflow that assumes they exist.

4. The trigger

WASync Trigger starts a workflow when something happens on your account. It supports four events:

  • message.received
  • message.status
  • connection.connected
  • connection.disconnected

The payloads are exactly the ones in the Webhooks guide — same fields, same ids, same timestamp-in-milliseconds.

One webhook slot per account — a trigger moves it

The API has a single webhook URL per account (PUT /webhook, POST /webhook/rotate, and no delete). Activating a WASync Trigger points that one slot at n8n.

So: if your own backend was already receiving webhooks, it stops the moment the trigger takes over. And two WASync Triggers cannot both hold the slot — the second one wins. If you need events in more than one place, receive them once and fan out yourself: let n8n hold the slot and forward from a workflow, or let your backend hold it and call an n8n Webhook node.

Test and production trigger URLs are different URLs, so switching between them also moves the slot.

Because deliveries are dropped after three failed attempts, keep a reconciliation path even in n8n: a scheduled workflow calling Message → Get Many every 30–60 seconds catches anything the trigger missed while the instance was restarting.

When the node is not enough

The node covers the common path. For media sends, pairing codes, connection provisioning, Idempotency-Key handling or anything else in the API reference, use n8n's HTTP Request node with the same credential: base URL https://developers.wasync.app/api/v1, header Authorization: Bearer <key>.

On this page