Skip to main content

Outbound SMS via CSV list

Updated this week

This guide explains how to launch automated outbound SMS batches using the Outbound SMS CSV files column on the Widgets page. By creating items with structured CSV data, you can queue SMS messages and define conversation reasons for each recipient.

Define the outbound SMS list

To start a batch of SMS messages, create a new item on the Widgets page under the Outbound SMS CSV files column containing your CSV data.

  1. Navigate to the Widgets page in the Builder.

  2. Locate the Outbound SMS CSV files column.

  3. Click the + (plus) button at the top of the column to create a new item.

  4. Enter a Title for the batch (e.g., "Leads Batch 1").

  5. Paste your structured CSV data into the Body field.

  6. Click Save.

Once saved, the AI Employee analyzes the data and queues the SMS messages. You can create multiple batches by adding new items to the Outbound SMS CSV files column.

CSV format requirements

Your data in the Body field must be formatted as standard CSV.

  • Header row: Include a header row to define column names (e.g., Phone Number,Reason). This helps the agent accurately identify the data.

  • Phone numbers: Ensure phone numbers are in a valid international format (e.g., include the country code like +1...). Invalid formats may prevent the SMS from being sent.

❗❗ IMPORTANT

Avoid duplicate phone numbers in the CSV. Duplicates can cause issues with messaging logic and result tracking.

Example CSV data

Phone Number,Reason
+1234567890,Follow up regarding the recent laptop purchase. Ask if they are satisfied with the service.
+1987654321,Check in regarding their account. Inform them the account has been upgraded to premium status.

How SMS dispatch works

When the AI Employee processes an SMS batch, it follows this sequence for each row in the CSV:

  1. Greeting generation: The AI Employee reads the Reason column for the recipient and generates a personalized opening message. The greeting reflects the agent's configured name, business context, tone, and language.

  2. Initial SMS sent: The generated greeting is sent to the recipient's phone number.

  3. Session opens: A conversation session begins and remains active for the configured session duration (default 60 minutes). During this window, the recipient can reply and the AI Employee will respond, conducting a two-way SMS conversation.

  4. Session ends: When the session duration expires or the conversation concludes naturally, the AI Employee analyzes the full conversation, generates a summary, and records the result.

πŸ—’οΈ NOTE

The AI Employee acts as the conversational agent during the SMS session. It uses the reason text from the CSV to guide the conversation toward the intended goal.

Session duration

The attribute project_attributes_setting_outbound_sms_session_duration controls how long each SMS conversation session stays active, in minutes.

Attribute

Default

Type

project_attributes_setting_outbound_sms_session_duration

60 (minutes)

Number

If the recipient does not reply within the session window, the conversation is marked as failed with a "customer-did-not-answer" status.

To adjust the session duration:

  1. Navigate to the Attributes page.

  2. Search for project_attributes_setting_outbound_sms_session_duration.

  3. Set the value to the desired duration in minutes.

Retrieve SMS results

Once the AI Employee processes the SMS batch, the results are written to a shared project attribute used for both outbound calls and SMS.

  1. Navigate to the Attributes page.

  2. Search for the project_attributes_outbound_call_table_csv_result attribute.

  3. Copy the content from the attribute value.

  4. Save the content as a .csv file (e.g., results.csv) to open it in spreadsheet software for analysis.

πŸ—’οΈ NOTE

If your list contains many entries (typically more than 50), the system will automatically generate multiple result attributes (e.g., ..._batch_1, ..._batch_2) to store the data.

Webhook payloads

You can configure the AI Employee to send conversation results to an external endpoint after each SMS session completes. This is useful for syncing results with a CRM or analytics platform.

Attribute

Description

project_attributes_setting_outbound_request_endpoint

The URL to receive the POST payload after each SMS session ends.

project_attributes_setting_outbound_payload_schema

A JSON schema defining additional fields to extract from the conversation.

project_attributes_setting_outbound_request_headers

Custom HTTP headers to include with the webhook request (JSON format).

When an endpoint is configured, the system sends a POST request containing:

  • phone_number β€” the recipient's phone number

  • transcript β€” the full SMS conversation text

  • status β€” finished (customer replied) or failed (no reply)

  • task_id β€” the unique task identifier

  • user_id β€” the unique user identifier for the recipient

  • Any additional fields defined in the payload schema

To configure webhook delivery:

  1. Navigate to the Attributes page.

  2. Set project_attributes_setting_outbound_request_endpoint to your webhook URL.

  3. Optionally, define project_attributes_setting_outbound_payload_schema with a JSON object describing additional data fields to extract from the conversation.

  4. Optionally, set project_attributes_setting_outbound_request_headers with any required authentication headers in JSON format.

Did this answer your question?