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.
Navigate to the Widgets page in the Builder.
Locate the Outbound SMS CSV files column.
Click the + (plus) button at the top of the column to create a new item.
Enter a Title for the batch (e.g., "Leads Batch 1").
Paste your structured CSV data into the Body field.
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:
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.
Initial SMS sent: The generated greeting is sent to the recipient's phone number.
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.
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 |
|
| 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:
Navigate to the Attributes page.
Search for
project_attributes_setting_outbound_sms_session_duration.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.
Navigate to the Attributes page.
Search for the
project_attributes_outbound_call_table_csv_resultattribute.Copy the content from the attribute value.
Save the content as a
.csvfile (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 |
| The URL to receive the POST payload after each SMS session ends. |
| A JSON schema defining additional fields to extract from the conversation. |
| 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 numbertranscriptβ the full SMS conversation textstatusβfinished(customer replied) orfailed(no reply)task_idβ the unique task identifieruser_idβ the unique user identifier for the recipientAny additional fields defined in the payload schema
To configure webhook delivery:
Navigate to the Attributes page.
Set
project_attributes_setting_outbound_request_endpointto your webhook URL.Optionally, define
project_attributes_setting_outbound_payload_schemawith a JSON object describing additional data fields to extract from the conversation.Optionally, set
project_attributes_setting_outbound_request_headerswith any required authentication headers in JSON format.
