Calls are the core of Simple AI. Every voice conversation — inbound or outbound — is a call. You can trigger calls from the API, the dashboard, or through campaigns, and each call is recorded, transcribed, and available for analysis.
Inbound Calls
Attach an agent to a phone number and every call to that number is handled by your AI. To set up inbound calls:
- Buy or connect a phone number — see Phone Numbers
- Assign an agent to that number — see Agents
- When someone calls, the agent picks up and follows its configured prompt and flow
You can also run a pre-call webhook before the conversation starts to inject dynamic parameters (like caller identity or account details) into the agent.
Outbound Calls
Outbound calls can be triggered three ways:
- API — send a POST request to Create Call with a phone number and agent
- Dashboard — place a call directly from the Simple AI web app
- Campaigns — reach a list of contacts automatically with scheduling and retries. See Campaigns
When making an outbound call, you can either reference an agent you have already configured or provide a prompt inline to create an agent on the fly.
The response confirms the call is queued and gives you its identifier:
Use that uuid to follow the call:
While a call is still enqueued, you can cancel it:
If you do not pass from_number_id, Simple AI picks one of your phone numbers to call from. Passing an idempotency_key makes the request safe to retry: sending it again with the same key and body returns the original response instead of placing a second call.
Compliance note: Outbound calls must follow all rules and regulations in your jurisdiction, including FCC rules and any applicable local laws.
Call Parameters
You can pass custom key-value parameters when creating a call. These parameters are available to the agent during the conversation and can be referenced in the prompt using {{parameter_name}} syntax.
Parameters are useful for personalizing calls — for example, passing in a customer name, order number, or account ID so the agent can reference it during the conversation.
Call Lifecycle
A call’s status moves from enqueued to in_progress and ends as completed, failed, or cancelled. See Call Object for what each status means and how to read the rest of the call.
Every call follows this sequence:
- Pre-call webhook (optional) — your server is notified before the call starts and can inject parameters
- Call started — the call is created and the agent connects
- In progress — the conversation happens, with real-time transcript updates available via webhooks
- Call completed — the call ends, recording and transcript are finalized, and post-call analyzers run
For full details on each step, see Call Flow.
Call Data
After a call completes, Simple AI stores:
- Recording — the full audio of the conversation
- Transcript — a text transcript of what was said by each party
- Duration — how long the call lasted
- Outcome — whether the call was answered, went to voicemail, or failed
- Analyzer results — structured data extracted by your analyzers
- Tags — labels applied by your tag rules
- Sentiment — automatic sentiment analysis of the caller’s tone
You can review this data in the dashboard, retrieve it through the API, or export it as CSV.
Language Support
Language availability depends on your agent’s selected voice and speech providers. Configure the language on the agent, and see the Create Call API reference for values accepted when creating one-off calls.
API Reference
Last modified on October 9, 2026