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

# Twilio

> Send SMS messages and make voice calls through Twilio, Plivo, or Exotel

## Overview

Firstwork integrates with **Twilio** (and alternative providers **Plivo** and **Exotel**) for SMS messaging and voice calling. This powers candidate notifications, reminders, two-factor authentication, and AI caller functionality.

## Supported Providers

| Provider   | SMS | Voice | Regions    |
| ---------- | --- | ----- | ---------- |
| **Twilio** | Yes | Yes   | Global     |
| **Plivo**  | Yes | Yes   | Global     |
| **Exotel** | Yes | Yes   | India, SEA |

## Setup

### Get your credentials

From your [Twilio Console](https://console.twilio.com):

* Account SID
* Auth Token
* Phone number(s)

### Configure in Firstwork

Go to **Settings > Integrations > SMS** in the Firstwork dashboard and enter your Twilio credentials.

### Configure phone numbers

Set up sending phone numbers in the Firstwork dashboard under **Settings > Communication**.

## SMS Messaging

### Send SMS Action

The **Send SMS** action in automations:

| Configuration | Description                                        |
| ------------- | -------------------------------------------------- |
| Recipient     | Phone number (from application/contract data)      |
| Message       | Text content with variable support                 |
| Provider      | Twilio, Plivo, or Exotel (auto-selected by region) |

### Template Variables

SMS templates support [dynamic variables](/knowledge-base/dynamic-variables). Variables that read Firstwork data use [Object Graph](/knowledge-base/object-graph) paths:

```
Hi {{application.candidate.first_name}}, your 
application for {{application.hiring_flow.name}} 
has been received. Track your progress at: 
{{application.magic_link}}
```

### Common SMS Automations

* Application status notifications
* Interview reminders
* Document upload reminders
* Onboarding instructions
* Emergency notifications

## Voice Calling

Voice capabilities power the [AI Caller](/features/ai-caller) module:

* Outbound calls to candidates
* AI-driven conversations
* Call recording and transcription
* Response extraction and form mapping

## Provider Selection

Firstwork automatically selects the best provider based on:

* Candidate's phone number country code
* Cost optimization
* Delivery reliability
* Feature requirements (voice vs. SMS)

You can also configure preferred providers per region in your company settings.

## Delivery Tracking

SMS delivery status is tracked and available in automation execution logs:

* Queued
* Sent
* Delivered
* Failed (with error reason)
