Skip to main content

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.

The AI Caller lets admins deploy AI-powered voice bots that can conduct phone calls, in-browser audio sessions, or video sessions with candidates. Each bot follows a configurable conversation script, captures structured data during the call, and feeds results back into hiring workflows and automations.

Creating an AI Caller Bot

Each bot is configured with:

Conversation Design

SettingDescription
System PromptThe main conversation script that guides the bot’s behavior, questions, and tone
System InstructionsHigh-level behavioral instructions for the bot
Input VariablesData passed to the bot before the call starts (e.g., candidate name, application details) — resolved from the candidate’s data
Output VariablesStructured data the bot should capture during the conversation (e.g., availability, salary expectations, qualifications)

Output Variable Types

Each output variable specifies what kind of data to capture:
TypeDescription
TextFree-form text response
NumberNumeric value — supports subtypes: Default, Currency, Percentage, Days, Months, Years
SelectionOne or more choices from a predefined list (preset options or custom options, with optional multi-select)
DateA date value, with optional restrictions on past or future dates
EmailAn email address
Phone NumberA phone number
Each variable also includes a capture prompt — an instruction that tells the bot exactly what to listen for.

Voice & Audio Settings

SettingDescription
VoiceChoose from 10 voices: Alloy, Ash, Ballad, Cedar, Coral, Echo, Sage, Shimmer, Verse, Marin
Voice SpeedAdjust the speaking rate
Maximum Call DurationSet a time limit (in seconds) for the conversation
Short Drop DurationMinimum call length (in seconds) before the call is considered a short/dropped call (default: 10s)
Profile PictureAn avatar displayed to the candidate during audio/video sessions

Realtime Model

Choose which GPT Realtime model powers the conversation:
ModelDescription
GPT RealtimeStandard realtime model
GPT Realtime MiniLightweight model — faster responses, lower cost
GPT Realtime 1.5Latest generation model (default) — best quality and latency

Turn Detection

Controls how the bot recognizes when the candidate has finished speaking:
ModeDescription
Voice Activity DetectionDetects silence to determine speech boundaries — configurable threshold (0–1, default 0.65), prefix padding (ms), silence duration (ms), and idle timeout (ms)
Semantic DetectionUses AI to understand conversational flow — configurable eagerness level (Low, Medium, High)

Smooth Barge-in

When enabled, the bot uses local Silero-based VAD to detect when a candidate speaks over the bot, making the mid-sentence barge in feel more natural. Disabled by default.

Summarization

A summary of the conversation is automatically generated after every call. A custom summary prompt can be provided to control what aspects of the conversation are highlighted.

Conversation History

When enabled, the bot includes summaries from prior calls with the same candidate in its context — useful for multi-stage workflows or follow-up calls.

Call Recording

Call recording requires a feature flag to be enabled for your account. Once enabled, recordings are stored securely and linked to the enrollment record. Even without the feature flag, recording can be enabled for individual test calls to review bot behaviour before going live.

Data Access

The bot can optionally be granted access to the candidate’s full data profile, allowing it to reference application details, documents, and other information during the conversation.

Tool Calling

Bots can invoke automations during a live call. Each linked automation (a Caller Bot Automation) is exposed to the AI as a callable tool.
SettingDescription
AutomationThe automation to invoke
SlugUnique identifier for this tool (must be unique per bot)
Tool DescriptionPlain-language description of when the AI should invoke this tool
Payload SchemaFields the AI must collect before invoking (each field has a name, type, and description)
EnabledToggle the tool on or off without removing the configuration
The AI decides when to invoke a tool based on the conversation context and tool descriptions. Automations run asynchronously — the call continues while the automation executes.

Call Types

TypeDescription
PhoneAn outbound phone call to the candidate’s number, placed via telephony provider
AudioAn in-browser audio session — the candidate speaks through their device microphone
VideoAn in-browser video session — includes camera and microphone

How Calls Are Triggered

MethodDescription
From a Hiring Flow FormAn AI Caller element is embedded in a form page — the call is initiated when the candidate reaches that step
From an AutomationThe “AI Caller” automation action enrolls a candidate in a call
Manual TestAdmins can test the bot directly from the setup interface

Form Integration

When an AI Caller is embedded within a hiring flow form, admins configure form mappings:
  • Input mappings connect data from the candidate’s profile to the bot’s input variables
  • Output mappings connect the bot’s captured responses to specific form fields
This means the bot’s conversation can both read from and write to the candidate’s application data. If the form element is configured as blocking, the candidate cannot proceed to the next page until the call is completed.

Call Logs & Monitoring

Every call generates a detailed enrollment record. Admins can review calls across three views:
  • Test Logs — Calls initiated from the admin test interface
  • Automation Logs — Calls triggered by automations
  • Application Logs — Calls triggered during form submission

Log Filters

FilterOptions
SearchBy candidate name
Call TypePhone, Audio, Video
Call StatusInitiated, In Progress, Completed, Failed

Call Detail

Each call record includes:
SectionContent
SummaryStatus, duration, and count of captured answers
RecordingAudio playback of the conversation (requires feature flag, or enabled per test call)
TranscriptFull text of the conversation
Conversation SummaryAI-generated summary of the conversation
Candidate DetailsLinked candidate profile information
Output ValuesAll captured variable values
Admins can re-trigger a test call or re-compute captured answers from the transcript.

Call Statuses

StatusDescription
InitiatedCall is queued but not yet started
In ProgressCall is currently active
CompletedCall finished successfully
FailedCall could not be completed due to an error
Short DropCall ended before the minimum call duration threshold
Identity MismatchThe person who answered could not be verified as the intended candidate
Reschedule RequiredThe candidate requested to be called back at a different time
Connection ErrorCall could not be established due to a telephony or network issue
User UnreachableCandidate did not answer — phone was busy, went to voicemail, or timed out
Timed OutCall exceeded the maximum allowed duration