Calls represent phone conversations handled by your AI assistants. HMS Sovereign supports both inbound calls (someone calls your number) and outbound calls (your assistant calls someone).Call Lifecycle#
Inbound Calls#
1.
Ringing - Call comes in to your registered number
2.
Assistant Request - If configured, webhook is called to customize the assistant
3.
In Progress - Call is answered and conversation begins
4.
Ended - Call ends (customer hung up, assistant ended, or transfer)
5.
Report - End-of-call webhook sent with summary and analysis
Outbound Calls#
1.
Dialing - Assistant initiates call to destination
2.
In Progress - Destination answers, conversation begins
4.
Report - End-of-call webhook sent
Call Properties#
| Property | Type | Description |
|---|
id | string | Unique call identifier |
caller_phone | string | Caller's phone number (E.164) |
agent_phone | string | Assistant's phone number (E.164) |
status | string | connecting, in-progress, ended, failed |
error | string | Error message if call failed |
started_at | datetime | When call was answered |
ended_at | datetime | When call ended |
duration_seconds | integer | Call duration |
summary | string | AI-generated call summary |
assistant_name | string | Name of assistant that handled call |
business_name | string | Business name of assistant |
Listing Calls#
{
"calls": [
{
"id": "call-_+31612345678_abc123",
"caller_phone": "+31612345678",
"agent_phone": "+31850835037",
"status": "ended",
"duration_seconds": 84,
"summary": "Klant vroeg naar openingstijden en wilde een afspraak maken.",
"agent_name": "Customer Support",
"business_name": "Acme Corp",
"started_at": "2025-12-13T10:00:00.000Z",
"ended_at": "2025-12-13T10:01:24.000Z",
"created_at": "2025-12-13T09:59:55.000Z"
}
],
"pagination": {
"total": 150,
"limit": 50,
"offset": 0
}
}
Filtering Calls#
Initiating Outbound Calls#
Make your assistant call someone using an existing assistant configuration:Or create a transient assistant with full configuration:{
"success": true,
"call_id": "call-outbound-abc123",
"status": "dialing"
}
Outbound Call Parameters#
| Parameter | Required | Description |
|---|
destination | Yes | Phone number to call (E.164 format) |
assistant_id | Conditional | Reference to existing assistant (use with assistant_override) |
assistant | Conditional | Full transient assistant configuration |
assistant_override | No | Override specific fields when using assistant_id |
number_id | Conditional | Phone number to use (required if using assistant) |
The agent_id, agent, and agent_override parameters are deprecated but still work as aliases.
Use Cases for Outbound Calls#
Real-time Call Control#
Send commands to active calls. The call must have status in-progress.Inject Context#
Add information to the assistant's context without speaking:Make Assistant Speak#
End Call#
Transfer Call#
Assistants - Configure assistants that handle calls