Skip to main content
POST

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Body

application/json
name
string
required
Maximum string length: 255
system_prompt
string
required

System prompt (Handlebars template).

greeting
string
required

Default greeting.

language
string
required
Maximum string length: 10
region
enum<string>
required

Region where the agent runs.

Available options:
us-east,
eu-central,
ap-south
models
object
required

Model configuration for the agent runtime (STT + LLM + TTS).

inbound_greeting
string | null

Optional greeting override for inbound calls.

outbound_greeting
string | null

Optional greeting override for outbound calls.

llm_router_enabled
boolean
default:true

Routes the agent's LLM traffic through SLNG's managed LLM routing layer. Enabled by default.

idle_nudges
object | null

Optional silence recovery behavior. The runtime can send two follow-up nudges, then speak a final message and hang up.

enable_interruptions
boolean
default:true
schema_version
enum<integer> | null

AgentConfig schema version. Set this to 2 for portable shared-agent configuration documents.

Available options:
2
tool_mode
enum<string>
default:shared

New agents use the shared organisation tool library.

Available options:
shared
tool_refs
object[]

Published organisation or curated tools attached to this agent.

Maximum array length: 128
mcp_refs
object[]

MCP server tools attached to this agent.

Maximum array length: 128
template_id
string<uuid> | null

Optional SLNG agent template. It cannot be combined with explicit tool_refs.

Example:

"550e8400-e29b-41d4-a716-446655440000"

sip_inbound_trunk_id
string<uuid> | null
Example:

"550e8400-e29b-41d4-a716-446655440000"

sip_outbound_trunk_id
string<uuid> | null
Example:

"550e8400-e29b-41d4-a716-446655440000"

template_defaults
object
template_variable_options
object

Per-variable options for the input variables used in the prompt and greetings, keyed by variable name. Use this to mark an input variable optional.

runtime_variables
object[]

Response

Agent created.

id
string<uuid>
required
Example:

"550e8400-e29b-41d4-a716-446655440000"

organisation_id
string<uuid>
required
Example:

"550e8400-e29b-41d4-a716-446655440000"

name
string
required
system_prompt
string
required
greeting
string
required
language
string
required
region
string
required
models
object
required

Model configuration for the agent runtime (STT + LLM + TTS).

idle_nudges
object
required

Optional silence recovery behavior. The runtime can send two follow-up nudges, then speak a final message and hang up.

enable_interruptions
boolean
required
tool_mode
enum<string>
required

Tool system fixed when the agent was created. New agents use shared.

Available options:
legacy,
shared
tools
object[]
required
deprecated
read-only

Legacy compatibility output. New shared agents return an empty array. Use tool_refs and mcp_refs for all new configuration.

tool_refs
object[]
required
mcp_refs
object[]
required
livekit_deployment
string
required

Name of the runtime deployment serving this agent.

template_variables
object
required
created_at
string<date-time>
required
Example:

"2026-01-15T10:30:00Z"

updated_at
string<date-time>
required
Example:

"2026-01-15T10:30:00Z"

inbound_greeting
string | null
outbound_greeting
string | null
models_validation_error
string | null

Set when the stored models configuration no longer validates against the current rules. In that case models is returned as stored, without validation.

llm_router_enabled
boolean

Whether the agent's LLM traffic is routed through SLNG's managed LLM routing layer.

sip_inbound_trunk_id
string<uuid> | null
Example:

"550e8400-e29b-41d4-a716-446655440000"

sip_outbound_trunk_id
string<uuid> | null
Example:

"550e8400-e29b-41d4-a716-446655440000"

runtime_variables
object[]
deleted_at
string<date-time> | null
Example:

"2026-01-15T10:30:00Z"