Skip to content

Voice Agents

Create and manage AI voice agents for campaigns and inbound calls.

Create Campaign Agent

POST/v1/agent_builder/campaign_agents

Creates a new AI voice agent for use in campaigns.

Request Body Fields

FieldRequiredTypeDescription
nametrueStringAgent name
voice_idtrueStringVoice ID from available voices
greetingtrueStringOpening greeting message
tasktrueStringAgent's primary task instructions
post_call_fieldsfalseArrayCustom fields to extract during calls
transfer_numberfalseStringPhone number for call transfers
is_transfer_enabledfalseBooleanEnable call transfer capability
is_appointment_booking_enabledfalseBooleanEnable appointment booking
phone_numberfalseStringDedicated phone number for this agent
phone_assignmentsfalseArrayPhone number assignments by case type
Request
bash
curl -X POST 'https://public-api.kayse.ai/v1/agent_builder/campaign_agents' \
-H 'X-API-KEY: your_api_key' \
-H 'Content-Type: application/json' \
-d '{
  "name": "Lead Qualification Agent",
  "voice_id": "voice_abc123",
  "greeting": "Hi, this is calling from Smith Law Firm. How are you today?",
  "task": "Qualify the lead by asking about their case details and interest level."
}'
Response
json
{
  "id": "agent_xyz789",
  "name": "Lead Qualification Agent",
  "voice_id": "voice_abc123",
  "greeting": "Hi, this is calling from Smith Law Firm. How are you today?",
  "task": "Qualify the lead by asking about their case details and interest level.",
  "created_at": "2026-04-14T10:30:00Z"
}

Update Campaign Agent

PATCH/v1/agent_builder/campaign_agents/{agent_id}

Updates an existing campaign agent configuration.

Request
bash
curl -X PATCH 'https://public-api.kayse.ai/v1/agent_builder/campaign_agents/agent_xyz789' \
-H 'X-API-KEY: your_api_key' \
-H 'Content-Type: application/json' \
-d '{
  "name": "Updated Agent Name",
  "greeting": "Updated greeting message"
}'
Response
json
{
  "id": "agent_xyz789",
  "name": "Updated Agent Name",
  "greeting": "Updated greeting message",
  "updated_at": "2026-04-14T11:00:00Z"
}

Get Campaign Agent Config

GET/v1/agent_builder/campaign_agents/{agent_id}/config

Retrieves the full configuration for a campaign agent.

Request
bash
curl -X GET 'https://public-api.kayse.ai/v1/agent_builder/campaign_agents/agent_xyz789/config' \
-H 'X-API-KEY: your_api_key'
Response
json
{
  "id": "agent_xyz789",
  "name": "Lead Qualification Agent",
  "voice_id": "voice_abc123",
  "greeting": "Hi, this is calling from Smith Law Firm.",
  "task": "Qualify the lead by asking about their case details.",
  "post_call_fields": [],
  "is_transfer_enabled": false,
  "is_appointment_booking_enabled": false
}

Delete Campaign Agent

DELETE/v1/agent_builder/campaign_agents/{agent_id}

Deletes a campaign agent.

Request
bash
curl -X DELETE 'https://public-api.kayse.ai/v1/agent_builder/campaign_agents/agent_xyz789' \
-H 'X-API-KEY: your_api_key'
Response
204 No Content

List Available Voices

GET/v1/agent_builder/voices

Returns a list of available voice options for agents.

Request
bash
curl -X GET 'https://public-api.kayse.ai/v1/agent_builder/voices' \
-H 'X-API-KEY: your_api_key'
Response
json
{
  "voices": [
    {
      "voice_id": "voice_abc123",
      "name": "Professional Female",
      "gender": "female",
      "accent": "american"
    },
    {
      "voice_id": "voice_def456",
      "name": "Friendly Male",
      "gender": "male",
      "accent": "american"
    }
  ]
}

Turn unreachable clients into paid cases.