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

# Outbound

> Configure your text Pearl to run outbound campaigns, from budget and scheduling to message limits, inactivity handling, and leads.

<div className="block dark:hidden">
  <Frame>
    <div className="p-1">
      <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-cover.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=11c3034b859aa5f513f55a9e3a7af6cd" alt="Outbound cover" className="rounded-[14px]" width="4192" height="2880" data-path="images/dark_mode/text-outbound-cover.png" />
    </div>
  </Frame>
</div>

<div className="hidden dark:block">
  <Frame>
    <div className="p-1">
      <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-cover.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=11c3034b859aa5f513f55a9e3a7af6cd" alt="Outbound cover" className="rounded-[14px]" width="4192" height="2880" data-path="images/dark_mode/text-outbound-cover.png" />
    </div>
  </Frame>
</div>

***

## Setting Up Outbound Campaigns

Once you have created a Pearl, you can use it to run outbound text campaigns. Outbound settings are configured inside your Pearl, under **Outbound Settings**, so your Pearl starts conversations with your leads following the conversational flow you defined.

<Info>
  **What are outbound campaigns?**

  Outbound campaigns let your Pearl start conversations with a list of leads through your connected messaging channels, following the conversational logic you defined for consistent and effective outreach.
</Info>

***

## Connect a Channel

Unlike a voice campaign, an outbound text campaign isn't tied to a phone number, it's connected to a **messaging channel**. Once your Pearl is published, open its **overview** page and connect the channel your campaign will use.

NLPearl supports channels such as **WhatsApp**, **Telegram**, **SMS**, and **Glassix**. Follow the dedicated guides to set one up:

<CardGroup cols={2}>
  <Card title="SMS" icon="comment-sms" iconType="light" href="/pages/text/channels/sms">
    Connect your Pearl to SMS through Twilio to text with your customers.
  </Card>

  <Card title="Telegram" icon="telegram" iconType="light" href="/pages/text/channels/telegram">
    Connect your Pearl to Telegram by linking a bot created with BotFather.
  </Card>
</CardGroup>

***

## Outbound Settings

Configure your campaign from the **Outbound Settings** tab of your Pearl, in the [PearlVibe](/pages/pearl_vibe) flow editor.

<Warning>
  These settings apply to **text** Pearls only. A voice Pearl has a different set of outbound options.
</Warning>

### Budget

Set an optional spending cap for the campaign, in dollars. Once the budget is reached, Pearl stops starting new conversations for that campaign. You can increase it at any time as long as you have enough credit on your account.

<Frame>
  <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-budget.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=c2c8856fd0047d63b85b10d2d81140bc" alt="Budget setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-budget.png" />
</Frame>

***

### Transcript Options

Choose what is kept from the conversation transcript. Transcripts appear in your conversation logs.

<Frame>
  <img src="https://mintcdn.com/nlpearl/YPwGw7hP4aonkrpJ/images/dark_mode/text-outbound-transcript-options.png?fit=max&auto=format&n=YPwGw7hP4aonkrpJ&q=85&s=7547552bcee871f552192d573cc0537c" alt="Transcript Options setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-transcript-options.png" />
</Frame>

| Option                     | Description                                                                                                                                      | When to use                          |
| -------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------ | ------------------------------------ |
| **Full Transcript**        | Keeps the entire conversation as-is.                                                                                                             | Complete analysis, QA, and training. |
| **Sensitive Info Removed** | Automatically masks sensitive data (credit card numbers, Social Security numbers, personal identifiers) while keeping the conversation readable. | Compliance and PII protection.       |
| **No Transcript**          | No transcript is stored for the conversation.                                                                                                    | Maximum privacy.                     |

<Info>
  With **Sensitive Info Removed**, if a customer writes *"My credit card number is 1234-5678-9012-3456"*, the transcript stores it as *"My credit card number is \*\*\*\*-3456"*, so you can review interactions safely without exposing sensitive data.
</Info>

***

### Default Timezone

Set the timezone for the campaign so that calling hours and scheduling are applied at the right local time.

<Frame>
  <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-default-timezone.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=7a490f320ec7ead27dd7f659587343d9" alt="Default Timezone setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-default-timezone.png" />
</Frame>

***

### Message Limit

The maximum number of messages Pearl sends before automatically handing the conversation off to a human. You can set between **5 and 1000** messages (default **100**).

<Frame>
  <img src="https://mintcdn.com/nlpearl/YPwGw7hP4aonkrpJ/images/dark_mode/text-outbound-message-limit.png?fit=max&auto=format&n=YPwGw7hP4aonkrpJ&q=85&s=b95abdae8de94c83116d677dba59cb11" alt="Message Limit setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-message-limit.png" />
</Frame>

***

### Auto-close After Inactivity

How long a conversation can stay inactive before Pearl closes the chat and triggers the post-chat summary. You can set between **1 and 72 hours** (default **24 hours**).

<Frame>
  <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-auto-close-after-inactivity.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=7e23fba7205f4a95be15b53a7f4b2ce1" alt="Auto-close After Inactivity setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-auto-close-after-inactivity.png" />
</Frame>

***

### Inactivity Follow-up

When enabled (on/off), Pearl sends follow-up messages when the lead stops replying after Pearl's last message, to re-engage the conversation.

<Frame>
  <img src="https://mintcdn.com/nlpearl/YPwGw7hP4aonkrpJ/images/dark_mode/text-outbound-inactivity-followup.png?fit=max&auto=format&n=YPwGw7hP4aonkrpJ&q=85&s=b486402d3108b69b7ce092ce1227474a" alt="Inactivity Follow-up setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-inactivity-followup.png" />
</Frame>

* **Up to 3 follow-ups**: each one is a **delay** plus an optional **message**.
* **Minimum delay**: at least **30 minutes** between follow-ups for outbound.
* **Default**: a single follow-up sent after **60 minutes**.

<Note>
  Follow-up messages can use **Pre-Call** variables (e.g. the lead's first name) to keep the re-engagement personal.
</Note>

***

### Calling Hours

Define the hours during which Pearl is allowed to send outbound messages. By default, messages go out **Monday to Friday, 08:00–18:00**. Calling hours respect each lead's timezone, so everyone is contacted at an appropriate local time.

<Frame>
  <img src="https://mintcdn.com/nlpearl/Utixv1_73hqGLnyk/images/dark_mode/text-outbound-calling-hours.png?fit=max&auto=format&n=Utixv1_73hqGLnyk&q=85&s=09ae5e96055965298dd60f0267110ffc" alt="Calling Hours setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-calling-hours.png" />
</Frame>

***

### Webhooks

Send conversation and lead events to an external endpoint, useful for tracking performance and keeping your CRM in sync.

<Frame>
  <img src="https://mintcdn.com/nlpearl/YPwGw7hP4aonkrpJ/images/dark_mode/text-outbound-webhook.png?fit=max&auto=format&n=YPwGw7hP4aonkrpJ&q=85&s=b17c8bf4296f1b7d78718ed3a06107c3" alt="Webhooks setting" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/text-outbound-webhook.png" />
</Frame>

* **Chat Webhook**: fires at key points in the conversation lifecycle (when the chat starts and ends), sending details like the outcome and any data collected during the conversation.
* **Lead Webhook**: fires whenever a lead changes status (at the start and end of the conversation), sending the lead's full information and current status. Use it to update your CRM in real time.

Each webhook supports:

* **Version**: `V1` or `V2` (default **V2**).
* **Credentials**: optional authentication token attached to the requests so your endpoint can verify they come from NLPearl.

<Tip>
  Use Webhooks only if external tools need event notifications. For actual automations, rely on **Post-Chat Actions** tied to how the conversation ended.
</Tip>

<Card title="Webhooks" icon="webhook" iconType="light" href="/pages/webhooks">
  Learn how to configure webhooks, authenticate requests, and handle the events NLPearl sends.
</Card>

***

## Project-Level Settings

A few settings live at the **Project** level rather than in the campaign settings screen. Open them from the settings popover on your Pearl.

### Agents

Sets how many **simultaneous agents** run this campaign, i.e. how many conversations can be handled at the same time, capped by your account's agent quota. A higher number allows faster outreach.

<Card title="Agents" icon="users" iconType="light" href="/pages/agents">
  Learn how to manage the agents assigned to your inbound and outbound activities.
</Card>

***

### Retention

Applies to **all conversations**. Set how long conversations are kept (a number of days, or leave empty to keep them indefinitely), then choose what is removed when they expire: delete all conversation data, or granularly the **Transcript**, **Summary**, or collected **Variables**.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/outbound-call-retention-settings.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=1763975d58b9e80946387c07656fc372" alt="Retention settings" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/outbound-call-retention-settings.png" />
</Frame>

***

### Lead Retention

Outbound only. Set how long leads are kept before they are automatically deleted (a number of days, or leave empty to keep them indefinitely). This removes the entire lead.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/outbound-lead-retention-settings.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=7b46dd147a2d092c07390d8eb585e48f" alt="Lead Retention settings" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/outbound-lead-retention-settings.png" />
</Frame>

***

## Managing Leads

Open the **Leads** tab in your campaign to add, view, and manage the people Pearl will contact. Leads are shown in a searchable, paginated table with default columns **Created**, **Phone Number**, **Time Zone**, **Reference ID**, and **Status**, plus one column per variable used in your Pearl.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-overview.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=69c29087e3f011daac7bb34ea7cf7c58" alt="Leads tab overview" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-overview.png" />
</Frame>

### Adding Leads

Click **Add Lead**, then choose how you want to add them.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-add.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=5a135e1dbc290f48fcc06f7ad2ac4981" alt="Add Lead button" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-add.png" />
</Frame>

<Card>
  <Tabs>
    <Tab title="Upload a File">
      Download the **CSV** or **XLSX** template, fill it with your lead data, and upload it back. The template only includes the variables actually used in your Pearl (unused ones won't appear, and extra columns you add won't be recognized). You can also set a timezone for the file — if left empty, the campaign timezone is used. After the upload, a report shows how many leads were added and lets you download the list of any failed rows.

      <Frame>
        <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-add-popup-upload-file.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=f57464011a18690e28d5c970dddfa787" alt="Add Lead - upload file" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-add-popup-upload-file.png" />
      </Frame>
    </Tab>

    <Tab title="Add Manually">
      Enter a lead one by one: contact identifier (phone number or messaging handle), any variables your Pearl uses, an optional timezone, and an optional **Reference ID** (your own external identifier, up to 100 characters).

      <Frame>
        <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-add-manually.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=18a8c57c14aa790ec8f94b1056fa9a5e" alt="Add Lead - manually" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-add-manually.png" />
      </Frame>
    </Tab>
  </Tabs>
</Card>

<Note>
  Both methods require accepting the **AI-messaging compliance** checkbox.
</Note>

***

### Customizing the View

Use **Customize Column** to show or hide any column, including the per-variable columns (by default, only the last 3 variables are shown). Up to 50 columns can be visible at once, and your selection is saved locally in your browser.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-customize-view.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=68e38df8062e69b0f639635238e058a3" alt="Customize columns" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-customize-view.png" />
</Frame>

***

### Exporting Leads

Click **Download CSV** to export your leads together with their current statuses. The export respects the filters currently applied to the table.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-download-csv.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=71eb2c06968a81f9b287c17bdec8faa2" alt="Download leads as CSV" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-download-csv.png" />
</Frame>

***

### Refreshing and Deleting

Select one or more leads (or select all across the current filter), then:

* **Refresh**: resets the leads to **New** so they re-enter the queue — handy to re-contact already-processed leads (Completed, Unsuccessful, etc.).
* **Delete**: permanently removes the selected leads, after a confirmation.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-delete-or-refresh.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=7c95fbdb355b037c2e9173fb2aa4e53a" alt="Refresh or delete selected leads" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-delete-or-refresh.png" />
</Frame>

***

### Outside Calling Hours

When a lead's local time falls outside your campaign's [calling hours](#calling-hours), a **moon icon** appears on its Time Zone column — the lead is "sleeping" and won't be contacted until its window opens. Hover the icon to see the lead's local time and UTC offset.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-sleeping.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=849e6b41bacbe567780eb99edb441fe3" alt="Lead outside calling hours indicator" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-sleeping.png" />
</Frame>

***

### Lead Details

Click a lead to open its details panel. Use the arrows or **↑/↓** keys to move between leads. The header shows the lead's name (or contact identifier), its **Lead ID** (copyable), and its status.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-popup-overview.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=0bcf1627c4e75712b34847104b403213" alt="Lead detail panel" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-popup-overview.png" />
</Frame>

**Status** — change the lead's status from the editable dropdown; the change is applied instantly. This simply updates the lead's status label (e.g. **Chat Successful**, **Chat Unsuccessful**, **New**) — for example, set it back to **New** to re-contact the lead.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-popup-change-status.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=65613a0c6176b5452791dc10140b868e" alt="Change lead status" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-popup-change-status.png" />
</Frame>

**Lead information** — Timezone, Reference ID, contact identifier, and every Pearl variable are **editable inline**, and each change is saved immediately. The panel separates two groups:

* **Lead data**: values you provided up front (imported or entered variables).
* **Lead Collected Info**: values Pearl gathered during the conversation.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-popup-info.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=71abb0e6e77126be82e49e5d8863cb45" alt="Lead information and collected info" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-popup-info.png" />
</Frame>

**Chats** — the right column lists the lead's conversations with their time and status; click one to open its **Post-Chat** view.

<Frame>
  <img src="https://mintcdn.com/nlpearl/5aa5Rk7qHypaYdNc/images/dark_mode/lead-popup-calls-view.png?fit=max&auto=format&n=5aa5Rk7qHypaYdNc&q=85&s=d7478770b2d0405d199defc7c8f39bb5" alt="Lead chats history" className="rounded-[14px]" width="5120" height="2880" data-path="images/dark_mode/lead-popup-calls-view.png" />
</Frame>

<Card title="Post-Chat" icon="message-check" iconType="light" href="/pages/text/postchat">
  See everything captured after a conversation: outcome, transcript, summary, and collected data.
</Card>
