Step-by-step guide to configure SMS, WhatsApp, Email, Telegram, Instagram, Messenger, and Voice channels on your sender
Channels are the communication pathways your sender uses to deliver messages. Each channel has different capabilities, requirements, and use cases. This guide walks you through adding and configuring each channel.
A sender can have multiple channels configured, enabling features like smart routing and automatic fallback. Here’s a quick reference:
Channel
Requirements
Setup Time
Smart Routing
Fallback
SMS
Phone number with SMS capability
Instant
Yes
Yes
WhatsApp
WABA connection + phone number
5-10 min
Yes
Yes
Email
Verified domain (DKIM records)
10-30 min
No
No
Telegram
Bot token from BotFather
5 min
No
No
Instagram
Meta App + Business Account
10-15 min
No
No
Messenger
Facebook Page
5 min
No
No
Voice
Phone number with voice capability
Instant
No
No
SMS and WhatsApp participate in smart routing and automatic fallback. Email, Telegram, Instagram, Messenger, and Voice are standalone channels that must be explicitly selected.
const sender = await zavu.senders.get({ senderId: "sender_12345" });console.log("Phone number:", sender.phoneNumber);// SMS is active if the phone number has SMS capability
// Telegram configuration is done via the dashboard// The sender will include telegram details after setup:const sender = await zavu.senders.get({ senderId: "sender_12345" });// Send a Telegram message (requires user to message bot first)await zavu.messages.send({ to: "123456789", // Chat ID from inbound message text: "Thanks for reaching out!", channel: "telegram",});
# Telegram configuration is done via the dashboardsender = zavu.senders.get(sender_id="sender_12345")# Send a Telegram message (requires user to message bot first)zavu.messages.send( to="123456789", # Chat ID from inbound message text="Thanks for reaching out!", channel="telegram")
# Telegram configuration is done via the dashboardsender = client.senders.get(sender_id: "sender_12345")# Send a Telegram message (requires user to message bot first)client.messages.send( to: "123456789", # Chat ID from inbound message text: "Thanks for reaching out!", channel: "telegram")
// Telegram configuration is done via the dashboardsender, _ := client.Senders.Get(context.TODO(), "sender_12345")// Send a Telegram message (requires user to message bot first)client.Messages.Send(context.TODO(), zavudev.MessageSendParams{ To: zavudev.String("123456789"), Text: zavudev.String("Thanks for reaching out!"), Channel: zavudev.String("telegram"),})
<?php// Telegram configuration is done via the dashboard$sender = $client->senders->get('sender_12345');// Send a Telegram message (requires user to message bot first)$client->messages->send([ 'to' => '123456789', 'text' => 'Thanks for reaching out!', 'channel' => 'telegram',]);
await zavu.messages.send({ to: "17841400000000000", // Instagram-scoped User ID text: "Thanks for your message!", channel: "instagram",});
zavu.messages.send( to="17841400000000000", # Instagram-scoped User ID text="Thanks for your message!", channel="instagram")
client.messages.send( to: "17841400000000000", # Instagram-scoped User ID text: "Thanks for your message!", channel: "instagram")
client.Messages.Send(context.TODO(), zavudev.MessageSendParams{ To: zavudev.String("17841400000000000"), Text: zavudev.String("Thanks for your message!"), Channel: zavudev.String("instagram"),})
<?php$client->messages->send([ 'to' => '17841400000000000', 'text' => 'Thanks for your message!', 'channel' => 'instagram',]);
curl -X POST https://api.zavu.dev/v1/messages \ -H "Authorization: Bearer $ZAVU_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "to": "17841400000000000", "text": "Thanks for your message!", "channel": "instagram" }'
Instagram has a 24-hour messaging window similar to WhatsApp. You can only message users who have contacted your Instagram account within the last 24 hours.
await zavu.messages.send({ to: "24025631120151183", // Messenger user ID (PSID) text: "Thanks for your message!", channel: "messenger",});
zavu.messages.send( to="24025631120151183", # Messenger user ID (PSID) text="Thanks for your message!", channel="messenger")
curl -X POST https://api.zavu.dev/v1/messages \ -H "Authorization: Bearer $ZAVU_API_KEY" \ -H "Content-Type: application/json" \ -d '{ "to": "24025631120151183", "text": "Thanks for your message!", "channel": "messenger" }'
Messenger has a 24-hour messaging window: you can only reply to users who have messaged your Page within the last 24 hours. Marketplace buyer chats arrive through the same channel automatically — see the Messenger guide.