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

# Campaigns Overview

> Send a complete sequence of WhatsApp messages to multiple customers from a single API call using Connectly's Flow Builder and Campaigns API 📢

Connectly campaigns let you trigger a full message flow — multiple steps, interactive buttons, conditional branching, and time delays — to a list of recipients in one API call. You build the flow visually in the Flow Builder, then kick off sendouts by passing the `campaignName` to the Campaigns API.

## How it works

<Steps>
  <Step title="Create your campaign">
    Go to [inbox.connectly.ai](https://inbox.connectly.ai) and click **Create new Campaign**. Follow the steps in the wizard and send the campaign to yourself to verify it works.
  </Step>

  <Step title="Build your flow in the Flow Builder">
    Go to [inbox.connectly.ai](https://inbox.connectly.ai) and click **Create new Campaign**. Design your message sequence — add steps, buttons, and branching logic — then send a test to your own WhatsApp number to verify it works end-to-end.
  </Step>

  <Step title="Open the Flow Builder">
    After a successful test send, navigate back to the **Flow Builder** section of the inbox.
  </Step>

  <Step title="Copy the campaign name">
    Select **Resend or Edit** next to your campaign. The name displayed is your `campaignName` — copy it exactly as shown.
  </Step>

  <Step title="Find your campaign name">
    Once your test send succeeds, go back to the **Flow Builder**, select **Resend or Edit** next to your campaign, and copy the name exactly as shown. This is the `campaignName` you'll pass in every API request.
  </Step>

  <Step title="Use it in the API">
    Pass the `campaignName` in your API request entries. See the example below.
  </Step>

  <Step title="Publish the campaign">
    Finalize and publish the campaign from the Connectly UI. The API will reject sendouts for unpublished campaigns with a `409` error.
  </Step>

  <Step title="Trigger the sendout via API">
    Call `POST /v1/businesses/{businessId}/send/campaigns` with your recipient list. Connectly groups entries by campaign name and version and returns a per-sendout status report.
  </Step>
</Steps>

<Note>
  Your Account Manager can help you set up a campaign flow and share the `campaignName` to use in API requests.
</Note>

***

## Adding time delays

The Flow Builder includes a **Time Delay** card you can drop between any two message steps. After the initial message is sent, Connectly waits for the configured duration before delivering the follow-up.

**Maximum delay: 20 hours.**

| Condition              | Behaviour                                                                                                                 |
| ---------------------- | ------------------------------------------------------------------------------------------------------------------------- |
| All customers          | Follow-up is sent to every customer who received the initial message.                                                     |
| Did not click a button | Follow-up is sent only to customers who received the message but didn't tap any button — useful for re-engagement nudges. |

To add a delay, drag the **Time delay** card from the sidebar onto your canvas, position it between the two message cards, and connect the nodes. Set the duration and condition in the card settings, then publish as normal.

<Tip>
  Use the "did not click a button" condition to avoid messaging customers who already responded.
</Tip>

***

## Minimal API example

The smallest valid request — one recipient, one campaign, no variables:

```json theme={null}
{
  "entries": [
    {
      "client": "+16045552331",
      "campaignName": "your_campaign_name"
    }
  ]
}
```

For the full request reference — variables, versioning, bulk sends, scheduling, and error handling — see [Send Campaigns](/campaigns/send-campaigns).

***

## Next steps

<CardGroup cols={2}>
  <Card title="Send Campaigns API" icon="paper-plane" href="https://docs.connectly.ai/campaigns/overview">
    Full endpoint reference — entries, variables, versioning, options, and error responses.
  </Card>

  <Card title="Webhooks" icon="bolt" href="https://docs.connectly.ai/webhooks/overview">
    Track delivery status and button clicks for each message in your campaign flow.
  </Card>
</CardGroup>
