# Building One Off Campaign

### Pre-requisites:&#x20;

Depending on the channel you want to run your campaigns on, you would need,

* Email API (Supported partner: TechAlpha)
* SMS API (Supported partner: Twilio)
* WhatsApp API (Supported partner: Meta, 360dialog, Twilio, GupShup, TechAlpha, Unifonic)

{% hint style="info" %}
If you do not have an API, you can reach out to sales at [**support@swiftsell.biz**](mail:support@swiftsell.biz)
{% endhint %}

### Step 1: Create an outbound bot using a one-off campaign

Go to the bot builder page, choose to create an outbound bot, and select one-off as your campaign preference.

### Step 2: Upload your contacts

Click on the 'Trigger' action block and upload a 'CSV' file which contains the contacts you want to reach out to.&#x20;

Once uploaded, you need to map the columns of the CSV with the variables on your account. This mapping is done to help you dynamically replace values in the messages of your campaigns.&#x20;

For example, if you want to include a message like *"Hello {name}, glad we could meet on {date}",* you need to store the name and date field in the contact mapping.

<figure><img src="https://2580337444-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsrMxU8nO3RjusUiYuXBB%2Fuploads%2FACxKfwMRjzdDHmC4S4L9%2FCleanShot%202023-12-29%20at%2018.42.46.png?alt=media&#x26;token=50bc2df9-1b44-4fdc-b0b7-69a3204a25f6" alt=""><figcaption></figcaption></figure>

{% hint style="info" %}
We consider the first row of the 'CSV' file as the column heading, these headings will be shown in the mapping of variables.
{% endhint %}

{% hint style="warning" %}
It is mandatory to have a phone/email field mapped, in order to be able to send a campaign to contacts.&#x20;
{% endhint %}

### Step 3: Create your outbound flow

Add an outbound block like **Send SMS** or **Send WhatsApp** and configure its fields on the right panel.

The configuration fields would differ based on the channel you use.&#x20;

### Step 4: Deploy your bot to run your campaign

Once your flow has been created, double-check all the messages for typos or any other mistakes and hit **Deploy**. \
\
A confirmation prompt will be shown to you for final approval before launching the campaign

{% hint style="info" %}
Once the bot is deployed, **it cannot be stopped**. All contacts will start getting the messages that you have defined&#x20;
{% endhint %}

### Step 5: See the results

Once the bot is deployed, it may take a few minutes for the bot to finish sending all the messages to the recipients. This delay may vary based on the contact list and the API provider you have used.&#x20;

Post that you can see the results of the campaign. Click on the numbers to go to a deeper view and be able to download a CSV which will contain the results of the campaign on a per-contact basis.

<figure><img src="https://2580337444-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FsrMxU8nO3RjusUiYuXBB%2Fuploads%2FX8nzi3irZ06mrHU7V4IE%2FCleanShot%202023-12-29%20at%2018.50.19.png?alt=media&#x26;token=2a07a357-1de6-4b3e-b4b8-09152a0520b8" alt=""><figcaption><p>Results of a campaign</p></figcaption></figure>

Status fields you will see are,

<table><thead><tr><th width="144">Status</th><th>Meaning</th></tr></thead><tbody><tr><td>Sent</td><td>The contact has been sent the message.</td></tr><tr><td>Failed</td><td>The message was undeliverable to the contact.</td></tr><tr><td>Delivered</td><td>The message was delivered to the contact.</td></tr><tr><td>Seen</td><td>The message was seen by the contact (Only on WhatsApp)</td></tr><tr><td>Replied</td><td>The message was replied back by the contact.</td></tr><tr><td>Clicked</td><td>The message had a link which was clicked (Only on Email)</td></tr></tbody></table>


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.swiftsell.biz/outbound-bots/building-one-off-campaign.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
