1. Create an Account
Sign up at dashboard.zavu.dev. You’ll be prompted to create your first team and project.Projects isolate your messaging by environment (development, staging, production) or by application.
2. Create a Sender
A Sender is your messaging identity — it defines who sends messages and which channels are available. Go to Senders in the sidebar and create your first sender.- Click Add Sender
- Give it a name (e.g., “Notifications”, “Support”)
- Assign a phone number (see step 3) or configure channels directly
- Set as default sender
3. Configure Channels
Each sender can have multiple channels. The channels you need depend on your use case:| Channel | Requirements | What It’s For |
|---|---|---|
| SMS | Phone number with SMS capability | Universal reach, alerts, OTP |
| Phone number + WABA connection | Rich messaging, cost-effective | |
| Verified domain (DKIM records) | Transactional emails, newsletters | |
| Telegram | Bot token from @BotFather | Bot messaging, tech audiences |
| Meta App + Business Account | Social messaging | |
| Voice | Phone number with voice capability | Text-to-speech calls, verification |
Channels that need a phone number
SMS, WhatsApp, and Voice require a phone number. You can purchase one directly in Zavu:
For WhatsApp, you also need to connect a WhatsApp Business Account (WABA) through Meta’s embedded signup in the dashboard.
Channels without a phone number
Email, Telegram, and Instagram each have their own setup:- Email: Add and verify your domain with DKIM records in Email Domains
- Telegram: Create a bot via @BotFather and paste the token in your sender’s Channels tab
- Instagram: Connect your Meta App and Instagram Business Account via the dashboard
SMS and WhatsApp participate in smart routing and automatic fallback. Other channels must be explicitly specified when sending. See Adding Channels for detailed setup instructions.
4. Create an API Key
Go to Settings → API Keys and generate your first key. See Authentication for details on key types and security.- Click Create API Key
- Give it a descriptive name
- Copy and store the key securely
5. Send Your First Message
Install the SDK for your language:Success! You should receive a
202 Accepted response. Your default sender handles routing automatically — if both SMS and WhatsApp are configured, Zavu selects the optimal channel based on cost and deliverability.Sending on a specific channel
To target a specific channel, pass thechannel parameter:
Response
6. Configure Webhooks (Optional)
To receive delivery status updates and incoming messages, configure a webhook on your sender.- Go to Senders and select your sender
- Add a Webhook URL (must be HTTPS)
- Select the events you want to receive
message.queued- Message acceptedmessage.sent- Message sent to carriermessage.delivered- Message delivered to recipientmessage.failed- Message failed to delivermessage.inbound- Incoming message receivedconversation.new- New conversation started
Sandbox Mode
New projects start in Sandbox Mode which only allows sending to verified phone numbers. This prevents accidental sends during development. To verify a number for sandbox testing:- Go to Sandbox in the sidebar
- Add your test phone numbers
- Verify via SMS code
Contact support to enable production mode when you’re ready to send to any number.
Next Steps
Sending Messages
Learn different ways to send messages
Adding Channels
Configure SMS, WhatsApp, Email, Telegram, and more
Send rich WhatsApp messages with media and templates
API Reference
Explore all endpoints
