Guide
Keep your number healthy
WhatsApp decides which numbers it restricts. Part of staying clear of that is built into wuapi. Most of it is how you send.
01/What wuapi does for you
Built into every account
Pacing and typing are off by default, so replies and codes go out at once. Turn them on per account, from the API or the dashboard, before you write first to many people. Sending safely
Paces a number, when you turn it on
Off by default. We recommend 12 messages a minute per account, and 5 a minute to people who never wrote to it.
messagesPerMinute 12 · firstContactPerMinute 5 · 0 = off · max 30Types before it sends, when you turn it on
Off by default. On, the contact sees "typing…" for 0.8 to 6 seconds, longer for longer messages.
typing.enabled true · 800–6000 ms · 25 chars/sQueues bursts
Each number sends one message at a time. With pacing on, 200 sent at once leave at the pace; a message waits up to 1 hour, then fails as rate_limited.
queueTimeoutMinutes 60 · 1–1440 per accountChecks the number first
Before a first message to someone, we ask WhatsApp if the number is on it. If it isn't, nothing is sent.
message.failed · error.code not_on_whatsappConnects from the number's country
Each account gets its own residential exit. If the proxy is down, the account stays offline instead of using our servers.
egress: residential or refuseKeeps the same exit
It only moves after 3 failed connects, at most 4 times a day, 6 hours apart, or 8 if it stays down.
sticky · rotate_after=3 · max 8/dayStops after a ban or logout
We don't reconnect a number WhatsApp logged out or banned. Retrying in a loop tends to make it worse.
disconnectReason temporary_ban · logged_outTurns calls away, if you want
With rejectCalls on, every call is declined as it rings, with an optional text reply.
PATCH /v1/accounts/{id} · rejectCalls · reply ≤ 1000 chars
02/What you should do
Habits that help
This is advice from running numbers, not WhatsApp's rulebook. Nobody outside WhatsApp knows exactly how it decides.
Message people who expect you
They gave you their number and know why you're writing. Make stopping easy, and honor it the first time.
Let them write first when you can
A chat the contact started is usually the safest kind. A "message us on WhatsApp" link on your site does this.
Warm up a new number
A new number sending a lot on day one is a common cause of trouble. Start small and grow with the replies (see below).
Write to one person, not a list
Use their name, their order, their appointment. The same text to hundreds of people tends to get reported.
Keep the first message plain
No links or attachments in a first message to a new contact. Send them after they reply.
Answer inbound fast
Numbers that hold real conversations tend to look like people, because they are.
Look like a real business
Set a name, a photo and an about line before you send anything.
PATCH /v1/accounts/{id}/profile · about ≤ 139 · name ≤ 25Profile endpointsDon't add strangers to groups
Share an invite link. If someone's privacy blocks an add, you get an invite code for them. Send that.
items[].error privacy_restricted → inviteCodeGroupsTurn pacing on before you reach out
Pacing is off by default. Turn on the recommended values before bulk, cold or marketing sends, and raise them only for traffic to people who expect it.
One number per use case
Keep support, sales and alerts apart. A bad week for one doesn't take the others with it.
A warm-up to start from
A suggestion, not a WhatsApp limit. New conversations you start, per number.
- Days 1–3
- 10 to 20 a day
- Days 4–7
- Up to about 50 a day
- Week 2
- Up to about 100 a day
- After that
- Grow only while replies keep up
You can also slow a new number down while it warms up, and put it back later.
PATCH /v1/accounts/{id} { "pacing": { "messagesPerMinute": 6 } } · null resets03/Watch the signals
When it starts going wrong
Fewer replies and more blocks tend to come first. If people stop answering a message, stop sending it.
If WhatsApp acts on the number, you'll get a webhook. The account's disconnectReason says which.
What to do
- 01Stop sending from that number. Pause your queue, not only the API calls.
- 02Don't re-link it in a loop. Each new attempt is one more signal.
- 03If it's a temporary ban, wait until it ends before you link again.
- 04Look at what you sent in the last few days: who, how many, what text.
- 05When it's back, start again at the warm-up pace.
04/What we can't promise
No guarantee. wuapi links your number as a device and doesn't control WhatsApp, which can restrict any number. The proxy removes a network signal. It does nothing about what you send or how people react to it.
Support can help you read what happened and what to change. It can't undo it.