Create Agent
Create a new agent.
Optionally include an initial voice configuration and tool attachments in the same request.
Authorizations
Workspace API key (e.g. kej_live_...)
Body
Create an agent (persona).
Agent name
1 - 255Agent description
Avatar URL
Enable contact memory across conversations
Call settings — call window, retry, scoring, tags, post-call
{
"allowed_days": [0, 1, 2, 3, 4],
"auto_retry": true,
"call_end_hour": 17,
"call_start_hour": 9,
"phone_assignment_mode": "local",
"retry_schedule": [60, 240],
"scoring_criteria": "Score 0-100 based on buying intent",
"structured_data_schema": [
{
"description": "Stated budget range",
"key": "budget"
},
{
"description": "Decision timeline",
"key": "timeline"
}
],
"tags": [
{
"description": "Contact expressed buying interest",
"name": "Interested"
},
{
"description": "Contact requested a follow-up call",
"name": "Follow-up"
}
]
}Initial voice configuration
Tools to attach to this agent
Response
Successful Response
Full agent (persona) response (public-safe).
Unified call settings -- controls call window, retry, scoring, tags, and post-call behavior.
Can be set at agent level or campaign level. Null fields inherit from the parent level. Hierarchy (lowest -> highest priority): System Defaults -> Workspace -> Agent -> Campaign -> API Override.
{
"allowed_days": [0, 1, 2, 3, 4],
"auto_retry": true,
"call_end_hour": 17,
"call_start_hour": 9,
"phone_assignment_mode": "local",
"retry_schedule": [60, 240],
"scoring_criteria": "Score 0-100 based on buying intent",
"structured_data_schema": [
{
"description": "Stated budget range",
"key": "budget"
},
{
"description": "Decision timeline",
"key": "timeline"
}
],
"tags": [
{
"description": "Contact expressed buying interest",
"name": "Interested"
},
{
"description": "Contact requested a follow-up call",
"name": "Follow-up"
}
]
}
