> ## Documentation Index
> Fetch the complete documentation index at: https://docs.zavu.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Adding Channels to a Sender

> Step-by-step guide to configure SMS, WhatsApp, Email, Telegram, Instagram, 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.

## Overview

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       |
| Voice     | Phone number with voice capability | Instant    | No            | No       |

<Note>
  SMS and WhatsApp participate in smart routing and automatic fallback. Email, Telegram, Instagram, and Voice are standalone channels that must be explicitly selected.
</Note>

## Prerequisites

Before adding channels:

1. **API key or dashboard access** - You need access to your [Zavu Dashboard](https://dashboard.zavu.dev)
2. **A sender profile** - Create a sender first if you haven't already
3. **Channel-specific credentials** - See each channel section below

## Adding Channels via Dashboard

<Steps>
  <Step title="Navigate to Sender Settings">
    Go to **Senders** in your [Zavu Dashboard](https://dashboard.zavu.dev) and select the sender you want to configure.
  </Step>

  <Step title="Open the Channels Tab">
    Click the **Channels** tab to view all available messaging channels and their current status.
  </Step>

  <Step title="Add a Channel">
    Click the **Add** button next to the channel you want to enable. Each channel has a specific setup flow.
  </Step>

  <Step title="Complete Configuration">
    Follow the channel-specific setup wizard to complete the configuration.
  </Step>
</Steps>

***

## SMS Channel

SMS is the most straightforward channel to configure. It uses your sender's phone number to send text messages.

### Requirements

* Phone number with SMS capability (purchased through Zavu or your own)
* Phone number must be assigned to the sender

### Setup via Dashboard

1. Navigate to your sender's **Channels** tab
2. The SMS channel is automatically enabled when you assign a phone number with SMS capability to your sender
3. Verify the status shows **Active**

### Setup via API

When creating or updating a sender with a phone number that has SMS capability, SMS is automatically enabled:

<CodeGroup>
  ```typescript TypeScript theme={null}
  import Zavu from "@zavudev/sdk";

  const zavu = new Zavu({ apiKey: process.env.ZAVU_API_KEY });

  const sender = await zavu.senders.create({
    name: "Support Line",
    phoneNumber: "+15551234567", // Phone with SMS capability
    setAsDefault: true,
  });

  console.log("Sender created:", sender.id);
  ```

  ```python Python theme={null}
  from zavudev import Zavudev

  zavu = Zavudev(api_key=os.environ["ZAVUDEV_API_KEY"])

  sender = zavu.senders.create(
      name="Support Line",
      phone_number="+15551234567",  # Phone with SMS capability
      set_as_default=True,
  )

  print(f"Sender created: {sender.id}")
  ```

  ```ruby Ruby theme={null}
  require "zavudev"

  client = Zavudev::Client.new(api_key: ENV["ZAVUDEV_API_KEY"])

  sender = client.senders.create(
    name: "Support Line",
    phone_number: "+15551234567", # Phone with SMS capability
    set_as_default: true
  )

  puts "Sender created: #{sender.id}"
  ```

  ```go Go theme={null}
  sender, _ := client.Senders.Create(context.TODO(), zavudev.SenderCreateParams{
  	Name:         zavudev.String("Support Line"),
  	PhoneNumber:  zavudev.String("+15551234567"),
  	SetAsDefault: zavudev.Bool(true),
  })

  fmt.Println("Sender created:", sender.ID)
  ```

  ```php PHP theme={null}
  <?php
  $sender = $client->senders->create([
      'name' => 'Support Line',
      'phoneNumber' => '+15551234567',
      'setAsDefault' => true,
  ]);

  echo "Sender created: " . $sender->id . "\n";
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.zavu.dev/v1/senders \
    -H "Authorization: Bearer $ZAVU_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "name": "Support Line",
      "phoneNumber": "+15551234567",
      "setAsDefault": true
    }'
  ```
</CodeGroup>

### Verifying SMS Status

Check if SMS is properly configured:

<CodeGroup>
  ```typescript TypeScript theme={null}
  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
  ```

  ```python Python theme={null}
  sender = zavu.senders.get(sender_id="sender_12345")
  print(f"Phone number: {sender.phone_number}")
  ```

  ```ruby Ruby theme={null}
  sender = client.senders.get(sender_id: "sender_12345")
  puts "Phone number: #{sender.phone_number}"
  ```

  ```go Go theme={null}
  sender, _ := client.Senders.Get(context.TODO(), "sender_12345")
  fmt.Println("Phone number:", sender.PhoneNumber)
  ```

  ```php PHP theme={null}
  <?php
  $sender = $client->senders->get('sender_12345');
  echo "Phone number: " . $sender->phoneNumber . "\n";
  ```

  ```bash cURL theme={null}
  curl https://api.zavu.dev/v1/senders/sender_12345 \
    -H "Authorization: Bearer $ZAVU_API_KEY"
  ```
</CodeGroup>

***

## WhatsApp Channel

WhatsApp requires connecting a WhatsApp Business Account (WABA) through Meta's Business Platform.

### Requirements

* Phone number (Zavu number recommended, or your own)
* Meta Business account
* WhatsApp Business Account (created during setup)

### Connection Options

<CardGroup cols={2}>
  <Card title="Zavu Phone Number" icon="phone">
    **Recommended.** Use a phone number from your Zavu account. Best for dedicated business lines.
  </Card>

  <Card title="Own Phone Number" icon="sim-card">
    Register any phone number you own via SMS/call verification.
  </Card>
</CardGroup>

### Setup via Dashboard

<Steps>
  <Step title="Open WhatsApp Setup">
    In your sender's **Channels** tab, click **Add** next to WhatsApp.
  </Step>

  <Step title="Choose Connection Method">
    Select whether to use a Zavu phone number (recommended) or your own phone number.
  </Step>

  <Step title="Complete Meta Business Signup">
    Follow the Meta embedded signup wizard to create or connect your WhatsApp Business Account.
  </Step>

  <Step title="Verify Phone Number">
    Enter your phone number and verify it. For Zavu numbers, select **Call** verification (not SMS).

    <Warning>
      Zavu phone numbers receive verification codes via voice call. Always select **Call** verification for Zavu numbers.
    </Warning>
  </Step>

  <Step title="Enter Verification Code">
    Enter the verification code displayed in the dashboard to complete setup.
  </Step>
</Steps>

### After WhatsApp Connection

Once connected, your sender response will include WhatsApp details:

```json theme={null}
{
  "id": "sender_12345",
  "name": "Support",
  "phoneNumber": "+15551234567",
  "whatsapp": {
    "phoneNumberId": "123456789012345",
    "displayPhoneNumber": "+15551234567",
    "paymentStatus": {
      "setupStatus": "COMPLETE",
      "methodStatus": "VALID",
      "canSendTemplates": true
    }
  }
}
```

<Tip>
  After connecting WhatsApp, configure your [WhatsApp Business Profile](/guides/whatsapp/profile) and create [message templates](/guides/whatsapp/templates/overview) for outbound conversations.
</Tip>

***

## Email Channel

Email requires domain verification to ensure deliverability and prevent spam filtering.

### Requirements

* A domain you control (e.g., `yourcompany.com`)
* Access to DNS settings for the domain
* Verification typically takes 10-30 minutes

### Setup via Dashboard

<Steps>
  <Step title="Navigate to Email Domains">
    Go to **Email Domains** in your dashboard and click **Add Domain**.
  </Step>

  <Step title="Enter Your Domain">
    Enter your domain (e.g., `yourcompany.com`).
  </Step>

  <Step title="Add DNS Records">
    Add the DKIM records provided to your domain's DNS:

    ```
    selector1._domainkey.yourcompany.com  CNAME  selector1.dkim.zavu.dev
    selector2._domainkey.yourcompany.com  CNAME  selector2.dkim.zavu.dev
    selector3._domainkey.yourcompany.com  CNAME  selector3.dkim.zavu.dev
    ```
  </Step>

  <Step title="Wait for Verification">
    Zavu checks DNS records every 5 minutes. Status will change to **Verified** once complete.
  </Step>

  <Step title="Assign to Sender">
    In your sender's **Channels** tab, enable email and select your verified domain.
  </Step>
</Steps>

<Tip>
  DNS propagation typically takes a few minutes but can take up to 48 hours in some cases.
</Tip>

### Email Configuration

Configure your email sender identity:

| Setting      | Example                   | Description                      |
| ------------ | ------------------------- | -------------------------------- |
| From Address | `noreply@yourcompany.com` | The address emails are sent from |
| Reply-To     | `support@yourcompany.com` | Where replies are directed       |

### Receiving Inbound Email

To receive inbound emails, enable email receiving on your sender:

<CodeGroup>
  ```typescript TypeScript theme={null}
  await zavu.senders.update({
    senderId: "sender_12345",
    emailReceivingEnabled: true,
  });
  ```

  ```ruby Ruby theme={null}
  client.senders.update(
    sender_id: "sender_12345",
    email_receiving_enabled: true
  )
  ```

  ```go Go theme={null}
  client.Senders.Update(context.TODO(), "sender_12345", zavudev.SenderUpdateParams{
  	EmailReceivingEnabled: zavudev.Bool(true),
  })
  ```

  ```php PHP theme={null}
  <?php
  $client->senders->update('sender_12345', [
      'emailReceivingEnabled' => true,
  ]);
  ```

  ```bash cURL theme={null}
  curl -X PATCH https://api.zavu.dev/v1/senders/sender_12345 \
    -H "Authorization: Bearer $ZAVU_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"emailReceivingEnabled": true}'
  ```
</CodeGroup>

***

## Telegram Channel

Telegram requires creating a bot through BotFather and connecting it to your sender.

### Requirements

* Telegram account
* Bot token from [@BotFather](https://t.me/BotFather)

### Create a Telegram Bot

<Steps>
  <Step title="Open BotFather">
    Open Telegram and search for [@BotFather](https://t.me/BotFather).
  </Step>

  <Step title="Create New Bot">
    Send `/newbot` and follow the prompts to name your bot.
  </Step>

  <Step title="Save Bot Token">
    BotFather provides a token like:

    ```
    123456789:ABCdefGHIjklMNOpqrsTUVwxyz
    ```

    <Warning>
      Keep your bot token secret. Anyone with this token can control your bot.
    </Warning>
  </Step>
</Steps>

### Setup via Dashboard

1. Go to your sender's **Channels** tab
2. Click **Add** next to Telegram
3. Paste your bot token
4. Click **Verify** to confirm the bot is valid
5. Click **Save** to complete setup

Zavu automatically registers the webhook with Telegram when you save.

### Setup via API

<CodeGroup>
  ```typescript TypeScript theme={null}
  // 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",
  });
  ```

  ```python Python theme={null}
  # Telegram configuration is done via the dashboard
  sender = 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"
  )
  ```

  ```ruby Ruby theme={null}
  # Telegram configuration is done via the dashboard
  sender = 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"
  )
  ```

  ```go Go theme={null}
  // Telegram configuration is done via the dashboard
  sender, _ := 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 PHP theme={null}
  <?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',
  ]);
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.zavu.dev/v1/messages \
    -H "Authorization: Bearer $ZAVU_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "to": "123456789",
      "text": "Thanks for reaching out!",
      "channel": "telegram"
    }'
  ```
</CodeGroup>

<Note>
  Telegram users must initiate contact with your bot first. You cannot message users who haven't started a conversation.
</Note>

***

## Instagram Channel

Instagram messaging requires connecting through Meta's Business Platform with your Instagram Business Account.

### Requirements

* Instagram Business Account (not personal)
* Meta Business account
* Meta App with Instagram Messaging permissions

### Setup via Dashboard

<Steps>
  <Step title="Open Instagram Setup">
    In your sender's **Channels** tab, click **Add** next to Instagram.
  </Step>

  <Step title="Connect Meta App">
    Follow the wizard to connect your Meta App and Instagram Business Account.
  </Step>

  <Step title="Grant Permissions">
    Authorize the required Instagram messaging permissions.
  </Step>

  <Step title="Select Instagram Account">
    Choose which Instagram Business Account to connect.
  </Step>
</Steps>

### Sending Instagram Messages

<CodeGroup>
  ```typescript TypeScript theme={null}
  await zavu.messages.send({
    to: "17841400000000000", // Instagram-scoped User ID
    text: "Thanks for your message!",
    channel: "instagram",
  });
  ```

  ```python Python theme={null}
  zavu.messages.send(
      to="17841400000000000",  # Instagram-scoped User ID
      text="Thanks for your message!",
      channel="instagram"
  )
  ```

  ```ruby Ruby theme={null}
  client.messages.send(
    to: "17841400000000000", # Instagram-scoped User ID
    text: "Thanks for your message!",
    channel: "instagram"
  )
  ```

  ```go Go theme={null}
  client.Messages.Send(context.TODO(), zavudev.MessageSendParams{
  	To:      zavudev.String("17841400000000000"),
  	Text:    zavudev.String("Thanks for your message!"),
  	Channel: zavudev.String("instagram"),
  })
  ```

  ```php PHP theme={null}
  <?php
  $client->messages->send([
      'to' => '17841400000000000',
      'text' => 'Thanks for your message!',
      'channel' => 'instagram',
  ]);
  ```

  ```bash cURL theme={null}
  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"
    }'
  ```
</CodeGroup>

<Note>
  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.
</Note>

***

## Voice Channel

Voice enables sending text-to-speech messages and receiving voicemails from callers.

### Requirements

* Phone number with voice capability (purchased through Zavu)
* Phone number must be assigned to the sender

### Capabilities

<CardGroup cols={2}>
  <Card title="Voice Messages" icon="phone-volume">
    Send short text-to-speech messages to recipients. Your text is converted to natural-sounding speech.
  </Card>

  <Card title="Voicemail" icon="voicemail">
    Receive voicemails that are automatically transcribed and appear in your inbox.
  </Card>
</CardGroup>

### Setup via Dashboard

<Steps>
  <Step title="Navigate to Voice Setup">
    In your sender's **Channels** tab, click **Add** next to Voice.
  </Step>

  <Step title="Verify Phone Number">
    Ensure your assigned phone number has voice capability enabled.
  </Step>

  <Step title="Configure Voicemail">
    Set up your voicemail greeting message that callers will hear.
  </Step>
</Steps>

### Sending Voice Messages

Send text-to-speech messages to recipients. The text is converted to natural-sounding speech and delivered as a voice call.

<CodeGroup>
  ```typescript TypeScript theme={null}
  await zavu.messages.send({
    to: "+56912345678",
    channel: "voice",
    text: "Your verification code is 1 2 3 4 5 6",
  });
  ```

  ```python Python theme={null}
  zavu.messages.send(
      to="+56912345678",
      channel="voice",
      text="Your verification code is 1 2 3 4 5 6",
  )
  ```

  ```ruby Ruby theme={null}
  client.messages.send(
    to: "+56912345678",
    channel: "voice",
    text: "Your verification code is 1 2 3 4 5 6"
  )
  ```

  ```go Go theme={null}
  client.Messages.Send(context.TODO(), zavudev.MessageSendParams{
  	To:      zavudev.String("+56912345678"),
  	Channel: zavudev.String("voice"),
  	Text:    zavudev.String("Your verification code is 1 2 3 4 5 6"),
  })
  ```

  ```php PHP theme={null}
  <?php
  $client->messages->send([
      'to' => '+56912345678',
      'channel' => 'voice',
      'text' => 'Your verification code is 1 2 3 4 5 6',
  ]);
  ```

  ```bash cURL theme={null}
  curl -X POST https://api.zavu.dev/v1/messages \
    -H "Authorization: Bearer $ZAVU_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{
      "to": "+56912345678",
      "channel": "voice",
      "text": "Your verification code is 1 2 3 4 5 6"
    }'
  ```
</CodeGroup>

<Tip>
  For verification codes, speak digits individually ("1 2 3 4 5 6") rather than as a number for better clarity.
</Tip>

### Receiving Voicemails

When someone calls your Zavu number:

1. The caller hears your voicemail greeting
2. They leave a voice message
3. The message is automatically transcribed
4. It appears in your inbox with both audio and transcription

Configure webhooks to receive `message.inbound` events with `channel: "voice"`.

<Note>
  Voicemails are automatically transcribed. You can access both the original audio recording and the text transcription in your inbox and via the API.
</Note>

***

## Verifying Channel Status

### Check via Dashboard

Navigate to your sender's **Channels** tab to see the status of each channel:

| Status             | Meaning                                    |
| ------------------ | ------------------------------------------ |
| **Active**         | Channel is properly configured and ready   |
| **Pending**        | Setup in progress or awaiting verification |
| **Error**          | Configuration issue - check details        |
| **Not Configured** | Channel has not been set up                |

### Check via API

<CodeGroup>
  ```typescript TypeScript theme={null}
  const sender = await zavu.senders.get({ senderId: "sender_12345" });

  console.log("Sender ID:", sender.id);
  console.log("Phone Number:", sender.phoneNumber);
  console.log("WhatsApp:", sender.whatsapp ? "Connected" : "Not configured");
  console.log("Email Receiving:", sender.emailReceivingEnabled);
  ```

  ```python Python theme={null}
  sender = zavu.senders.get(sender_id="sender_12345")

  print(f"Sender ID: {sender.id}")
  print(f"Phone Number: {sender.phone_number}")
  print(f"WhatsApp: {'Connected' if sender.whatsapp else 'Not configured'}")
  print(f"Email Receiving: {sender.email_receiving_enabled}")
  ```

  ```ruby Ruby theme={null}
  sender = client.senders.get(sender_id: "sender_12345")

  puts "Sender ID: #{sender.id}"
  puts "Phone Number: #{sender.phone_number}"
  puts "WhatsApp: #{sender.whatsapp ? 'Connected' : 'Not configured'}"
  puts "Email Receiving: #{sender.email_receiving_enabled}"
  ```

  ```go Go theme={null}
  sender, _ := client.Senders.Get(context.TODO(), "sender_12345")

  fmt.Println("Sender ID:", sender.ID)
  fmt.Println("Phone Number:", sender.PhoneNumber)
  if sender.WhatsApp != nil {
  	fmt.Println("WhatsApp: Connected")
  } else {
  	fmt.Println("WhatsApp: Not configured")
  }
  fmt.Println("Email Receiving:", sender.EmailReceivingEnabled)
  ```

  ```php PHP theme={null}
  <?php
  $sender = $client->senders->get('sender_12345');

  echo "Sender ID: " . $sender->id . "\n";
  echo "Phone Number: " . $sender->phoneNumber . "\n";
  echo "WhatsApp: " . ($sender->whatsapp ? 'Connected' : 'Not configured') . "\n";
  echo "Email Receiving: " . ($sender->emailReceivingEnabled ? 'true' : 'false') . "\n";
  ```

  ```bash cURL theme={null}
  curl https://api.zavu.dev/v1/senders/sender_12345 \
    -H "Authorization: Bearer $ZAVU_API_KEY"
  ```
</CodeGroup>

***

## Best Practices

<CardGroup cols={2}>
  <Card title="Enable Multiple Channels" icon="layer-group">
    Configure both SMS and WhatsApp to enable automatic fallback when one channel fails.
  </Card>

  <Card title="Use Smart Routing" icon="route">
    Let Zavu select the optimal channel to reduce costs by up to 80%.
  </Card>

  <Card title="Set Up Webhooks" icon="webhook">
    Configure webhooks to receive inbound messages and delivery status updates.
  </Card>

  <Card title="Verify Before Sending" icon="check-circle">
    Test each channel with a single message before sending at scale.
  </Card>
</CardGroup>

***

## Troubleshooting

### SMS Issues

| Issue            | Solution                                |
| ---------------- | --------------------------------------- |
| SMS not sending  | Verify phone number has SMS capability  |
| Messages failing | Check 10DLC registration for US numbers |

### WhatsApp Issues

| Issue                           | Solution                                                |
| ------------------------------- | ------------------------------------------------------- |
| Verification code not appearing | Select **Call** verification for Zavu numbers           |
| Meta signup fails               | Ensure Facebook Business account has proper permissions |
| Can't send messages             | Check if 24-hour window is open or use templates        |

### Email Issues

| Issue                | Solution                                   |
| -------------------- | ------------------------------------------ |
| Domain not verifying | Check DNS records are correctly configured |
| Emails going to spam | Verify DKIM records are propagated         |
| Bounces              | Verify recipient email addresses are valid |

### Telegram Issues

| Issue                 | Solution                                         |
| --------------------- | ------------------------------------------------ |
| Bot token invalid     | Regenerate token via BotFather using `/token`    |
| Messages not arriving | Verify webhook is registered (automatic on save) |
| Can't message user    | Users must initiate contact first                |

### Instagram Issues

| Issue             | Solution                                       |
| ----------------- | ---------------------------------------------- |
| Connection failed | Verify Instagram account is a Business Account |
| Messages failing  | Check 24-hour messaging window                 |
| Permission errors | Re-authorize Meta App permissions              |

### Voice Issues

| Issue                 | Solution                                     |
| --------------------- | -------------------------------------------- |
| Voice not available   | Verify phone number has voice capability     |
| Message not delivered | Check recipient answered the call            |
| No transcription      | Voicemail may have been too short or unclear |

***

## Next Steps

<CardGroup cols={2}>
  <Card title="Send Messages" icon="paper-plane" href="/guides/sending-messages/easy-way">
    Start sending messages through your configured channels
  </Card>

  <Card title="Configure Webhooks" icon="webhook" href="/guides/receiving-messages/webhooks">
    Set up webhooks to receive inbound messages
  </Card>

  <Card title="WhatsApp Templates" icon="file-lines" href="/guides/whatsapp/templates/overview">
    Create templates for WhatsApp outbound messaging
  </Card>

  <Card title="Smart Routing" icon="route" href="/guides/sending-messages/smart-routing">
    Learn how Zavu optimizes channel selection
  </Card>
</CardGroup>
