Integration · Coming soon
An official Zapier integration is on the way
It is built and it is private — not listed in Zapier's own app directory yet. If you searched for it there and came up empty, that is expected, not a sign anything is broken. There is no invite list to join today; when that changes, it will be posted here.
Install
POST https://waapi.app/api/v1/instances/{id}/webhooks
Authorization: Bearer YOUR_TOKEN
{ "url": "https://hooks.zapier.com/hooks/catch/…", "events": ["message"] }
Nothing to install yet — this is the manual route that works today. See below for the full walkthrough with Webhooks by Zapier.
What the official integration will do
Three triggers and two send actions — the same events and the same actions the REST API already exposes, wired up as native Zapier steps.
Triggers
New Message
Fires when the connected number receives a message.
Message Status Changed
Fires when a message you sent is delivered or read.
Connection Status Changed
Fires when the connection becomes ready, drops, or needs a new QR code.
Actions
Send Message
Sends a text message from the connected number.
Send Media
Sends an image, video, audio or document from a URL, with an optional caption.
Use it with Zapier today
You do not need the official app to connect a Zap right now. Zapier's own Webhooks by Zapier app can catch events directly — this is the substance of this page, not a placeholder for what is coming.
Create a Catch Hook
In Zapier, start a Zap with the Webhooks by Zapier trigger and choose Catch Hook. Zapier gives you a unique URL for that Zap.
Register it as a subscription
Copy that URL and POST it to your instance with the events you want. A token
with only the read scope
cannot create one — you need read
and update together.
Build the rest of the Zap
Every matching event now lands on the Catch Hook as the trigger payload — filter, transform and act on it with any other Zapier step, same as any other webhook-driven Zap.
Register the subscription
POST https://waapi.app/api/v1/instances/{id}/webhooks
Authorization: Bearer YOUR_TOKEN
{ "url": "https://hooks.zapier.com/hooks/catch/…", "events": ["message"] }
Turning the Zap off does not remove the subscription by itself — delete it so events stop being sent to a hook nobody is listening on anymore:
Remove it
DELETE https://waapi.app/api/v1/instances/{id}/webhooks/{subscriptionId}
Authorization: Bearer YOUR_TOKEN
The subscription id comes back in the response of the POST above — keep it, since
there is no undo without it. events
accepts more than message; the full
list is in the API reference.
Zapier questions
What is live, what is not, and how the manual route holds up until it ships.
-
Because it is not published there yet. The integration exists and is private; it has not gone through Zapier's review and listing process. This page is the honest status, not a workaround for a broken search.
-
No. Neither exists yet, and we would rather say that plainly than collect emails for something we cannot promise a date on. Use the manual route above in the meantime.
-
No. Webhooks by Zapier is one of Zapier's own built-in apps, and registering a subscription uses the REST API you already have with your plan.
-
Both read and update. Creating or deleting a subscription needs update; listing an instance's existing subscriptions needs read.
-
Yes. Each Zap registers its own subscription with its own catch-hook URL, so one instance can feed several independent Zaps at once, each with its own event filter.
-
Today, with a plain HTTP Request step against the same REST API used above — POST to the send-message or send-media action endpoint with your bearer token. The official actions will make that a native step instead of a raw request.
Connect an account and start sending
One flat rate per connected account. Unlimited messages, no approval process, no per-message invoice.