Phone numbers connect callers to your AI agent. When someone calls the number, Annie answers and handles the conversation based on the attached bot’s training. This guide walks through every step of setting up a phone number — from choosing the right area code to attaching it to your bot.Documentation Index
Fetch the complete documentation index at: https://docs.helloannie.com/llms.txt
Use this file to discover all available pages before exploring further.
Prerequisites
Before provisioning a phone number, make sure you have:- An organization created with a complete address and timezone
- A bot configured with greetings and training
- An API key with write permissions (see Authentication)
Step 1: Choose the Right Area Code
When you provision a phone number, Annie purchases a real US phone number for your organization. You can specify a 3-digit US area code to control where the number appears to be from. How area code selection works:- If you provide a valid
areaCode, Annie provisions a number from that area code - If you omit
areaCode, a default area code is used — we recommend always specifying one - The area code must be a valid US area code (3 digits)
Step 2: Provision the Phone Number
Create a new phone number by making a POST request to the phone numbers endpoint. You’ll need to specify the organization, a friendly name, the language, voice, and area code.Required Fields
The organization ID that will own this phone number. The phone number inherits the organization’s context (address, hours, timezone) for handling calls.
A friendly name to identify this phone number. Use descriptive names that reflect the number’s purpose.Examples:
"Main Line", "After Hours", "Spanish Line", "Recall Outreach"The language Annie uses when answering calls on this number. This controls both the voice model and the language of the conversation.
See Configuring Language for details on setting up language for your phone numbers.
| Value | Description |
|---|---|
ENGLISH | English (US) |
SPANISH | Spanish |
FRENCH | French |
The voice Annie uses when speaking to callers. Each voice has a distinct personality and tone.
| Voice ID | Description |
|---|---|
FRIENDLY_BRIGHT | Warm, welcoming, and easy to understand |
CALM_REASSURING | Subtle, gentle voice that builds trust |
POLISHED_PROFESSIONAL | Crisp, formal, business-ready clarity |
KIND_CURIOUS | Thoughtful and asks with care |
CONFIDENT_UPBEAT | Energetic, decisive, and positive |
Optional Fields
The bot ID to attach the phone number to immediately. If omitted, the phone number is created in a detached state and must be attached to a bot before it can handle calls. See Step 3 for details.
A 3-digit US area code for the phone number (e.g.,
"312" for Chicago, "212" for New York). If omitted, a default area code is assigned.We strongly recommend providing an area code that matches your organization’s location for caller trust and recognition.A verified caller ID for outbound calls, in
+1XXXXXXXXXX format. Must be pre-registered and verified for the organization. See Verified Caller IDs for setup.If a recipient calls back an outbound number, the call will be forwarded to this phone number. This field only applies to outbound numbers and is ignored for inbound numbers.
Step 3: Attach to a Bot
If you provided abotId during provisioning, the phone number is already attached and ready to receive calls. If not, attach it now:
The bot must belong to the same organization as the phone number. You cannot attach a phone number owned by one organization to a bot in a different organization.
Choosing the Right Bot
Which bot you attach determines how Annie handles calls on this number. Consider your use case:| Use Case | Bot Setup |
|---|---|
| General receptionist | A bot trained with comprehensive workflows, FAQs, and scheduling capabilities |
| After-hours line | A bot with a closedPhoneGreeting and training focused on message-taking and basic scheduling |
| Spanish line | A bot with Spanish-language training, paired with a phone number set to language: "SPANISH" |
| Outbound campaigns | A bot with outbound: true and campaign-specific workflows (e.g., appointment reminders, recall) |
| Scheduling only | A bot trained exclusively on appointment scheduling workflows |
Detaching a Phone Number
To switch a phone number to a different bot, first detach it:Step 4: Verify Your Setup
After provisioning and attaching, confirm everything is configured correctly by retrieving your phone number:botIdis notnull(the number is attached to a bot)languagematches the language your bot is trained inorgIdmatches the organization for this locationvoiceIdis the voice you want callers to hear
Updating Phone Number Configuration
After provisioning, you can update the language, voice, or caller ID settings:Configuring Language
Thelanguage field on a phone number controls how Annie listens to and speaks with callers. When you set a language (ENGLISH, SPANISH, or FRENCH), Annie conducts the entire conversation in that language — including speech recognition, responses, and voice output.
Dedicated Language Lines
For practices that serve specific language communities, dedicate a phone number to each language:Changing a Phone Number’s Language
You can update the language of an existing phone number at any time using the PATCH endpoint:Listing Phone Numbers
Retrieve all phone numbers for your organization:orgId query parameter:
Call Forwarding
You can forward calls from your existing business number to your Annie number. This lets you keep your current phone number while having Annie answer. Common setups:- Forward all calls — Annie answers everything
- Forward after hours — Your staff answers during business hours, Annie handles after-hours
- Forward on busy/no answer — Annie picks up overflow calls
Multiple Numbers
Each organization can have up to 10 phone numbers. You can use multiple numbers for different purposes:- Main line → General bot with full training
- Scheduling line → Bot focused on appointment scheduling
- After-hours line → Bot with after-hours messaging
- Spanish line → Bot trained in Spanish, with a number set to
language: "SPANISH" - Outbound line → Bot configured for outbound campaigns
Deleting a Phone Number
To delete a phone number, it must first be detached from any bot:Migrating a Phone Number
To move a phone number to a different organization (e.g., when restructuring locations), use the migrate endpoint:Migrating a phone number clears its bot attachment, since the bot belongs to the original organization. After migration, attach the number to a bot in the new organization.
What’s Next
Inbound Calls
Start receiving calls once your phone number is attached
Outbound Calls
Use your phone number to place outbound calls to patients
Bot Configuration
Configure your bot’s greetings, industry, and training
Phone Numbers API
See the full API reference for all phone number endpoints