Quickstart
Connect a number, create a key, send your first message. About five minutes.
API reference
Every endpoint, every field, with a playground you can send real requests from.
What people use it for
Order and delivery updates
Order and delivery updates
“Order #2043 confirmed”, “Your parcel is out for delivery”. Send them from the number your customers already message you on, at the moment your system knows about them — not in a nightly batch.
Invoices and receipts as PDFs
Invoices and receipts as PDFs
Put the PDF on a public link and send it with
/v1/messages/document. The customer gets a real file they can keep, named the way you want it.One-time passwords and verification codes
One-time passwords and verification codes
A short text message, sent the second your system generates the code. Keep the rate limit in mind and always give people a fallback route in.
Appointment reminders
Appointment reminders
“Your appointment is tomorrow at 10:00.” Add a poll if you want them to pick a slot, or a plain “reply YES to confirm”.
Internal alerts
Internal alerts
Low stock, a failed payment, a machine gone offline. Send them to a staff number from a number your team recognises.
Who it is for
Anyone who can make an HTTP request. If you can call an API from your website, your billing software, your ERP or a low-code tool, you can use this. The examples below are cURL, Node.js and Python, but nothing here is language-specific — it is JSON over HTTPS.How it works
1
Connect a number
In the portal, add a number and scan the QR with WhatsApp on that phone. The number stays linked, like WhatsApp Web on a computer.
2
Create an API key
One key identifies your account. It is shown once, so store it somewhere safe on your server.
3
Send
POST to the endpoint for the kind of message you are sending, with your key in an apikey header and the instance_id of the number it should go out from.Send a text message
What you can send
Twelve message types, each with its own endpoint:Text
Image
Video
Document
Voice note
Sticker
Location
Contact card
Reaction
Poll
List menu
Buttons
What it does not do
Being honest about this up front saves you an afternoon:- No incoming messages and no webhooks. The API sends. It does not deliver replies to you, and there is nothing to subscribe to. Read the full list of what is not built.
- No bulk endpoint. One request sends one message. Loop over your list and pace it against your rate limit.
- No scheduling. A request sends now. Schedule it on your side.
- No file upload. Media is sent from a public link you host — see Sending media.
Where to go next
Quickstart
From nothing to a message on someone’s phone.
Authentication
How keys work, and how to rotate one safely.
Errors
Every error code, what causes it and what to do about it.
If your number disconnects
The one operational problem every integration eventually hits.