Can the API guarantee my number is safe?
No. Tusk WhatsApp links your own number as a device. WhatsApp can limit, restrict or permanently ban any number, and a ban is usually not reversible by us. Treat the number as something you can lose, and do not link one your business cannot do without while you are testing.
How do I start with a new number?
- Warm it up. A brand-new number that suddenly sends many messages looks suspicious. Use it normally for a while first: chat with real contacts and let people reply.
- Start small. Send a few dozen messages a day to people who know you, then raise volume gradually over weeks, not hours.
- Avoid sudden spikes. A jump from 20 messages a day to 2,000 is a classic trigger. Grow in steps and keep the pattern steady.
- Keep the profile complete. Set a name, a photo and a business description so the number looks like a real, identifiable sender.
Who should I message?
- Only people who opted in. They asked to hear from you, for example at checkout or by messaging you first. Keep a record of when and how.
- No cold lists. Do not message bought, scraped or guessed numbers. People who do not know you will report or block you, and blocks and reports are the strongest signal WhatsApp uses.
- Check numbers first. Use
contacts/checkand skip numbers that are not on WhatsApp. Sending to many missing numbers is itself a bad signal. - Handle opt-outs. Tell people how to stop (for example “Reply STOP”), listen for
message.receivedwebhooks, and stop messaging anyone who asks, immediately and permanently.
How should I send?
- Vary your content. Hundreds of identical messages look automated. Personalise with the name or an order detail, and use templates with real variables rather than one fixed blast.
- Pace sends. Our limit is 60 messages per minute per session, but that is a technical ceiling. Stay far below it. With bulk, use a long
delayBetweenMessagesand keeprandomizeDelayon. - Prefer conversations. Messages people reply to build the number’s reputation. Messages that get ignored or blocked erode it.
- Be clear who you are. Say who is writing and why in the first message. Avoid link-only messages and heavy use of shortened URLs.
What should I monitor?
- Delivery failures. Subscribe to
message.failedandmessage.ackin webhooks. A rising failure rate means stop and investigate. - Session warnings. Watch
session.restriction,session.disconnectedandsession.reconnect_loopevents. On a restriction, stop sending from that number. - API errors. Do not retry in a loop. Stop a campaign on repeated
400,409orsession_not_readyerrors and find the cause. For bulk, enablestopOnError. - Blocks and complaints. If people block you or ask why they are getting messages, your audience or content is wrong. Fix that before sending more.
Quick checklist
- Number warmed up, profile complete.
- Every recipient opted in, with a record.
- Numbers checked before first send.
- Content varied and personalised, not identical.
- Volume ramped gradually, delays generous, far below 60 per minute.
- STOP requests honoured automatically.
- Failures and restriction events monitored, with an automatic stop.
Ready to send? Go to Send messages from a session.