Skip to main content
PUT
Update an agent

Authorizations

Authorization
string
header
required

API key in format: rg_live_xxxx. Pass as a Bearer token in the Authorization header.

Path Parameters

id
string<uuid>
required

Agent ID.

Body

application/json
agent_name
string

New agent name.

Maximum string length: 50
prompt
string

New system prompt.

Maximum string length: 120000
voice_id
string<uuid>

New voice ID from the catalog returned by GET /agent/voices. Updates language and gender to match the selected voice.

agent_type
enum<string>
Available options:
inbound,
outbound
intro_message
string | null

New greeting message. Pass null or empty string to remove.

Maximum string length: 500
voicemail_detection_enabled
boolean

Toggle carrier-side voicemail detection for this agent on supported outbound providers.

screener_handling_enabled
boolean

Toggle phone screener handling for this agent on outbound calls. Requires voicemail_detection_enabled to be true and platform screener handling to be enabled.

voicemail_message
string | null

Update the message used after a supported carrier detects voicemail. Pass null or an empty string to clear.

Maximum string length: 500
project_id
string<uuid> | null

Move the agent to a different project.

enable_recording
boolean
kb_threshold
enum<string> | null

Pass null to reset to default (medium).

Available options:
low,
medium,
high,
null
kb_include_summaries
boolean
kb_result_format
string | null
Maximum string length: 2000
kb_enable_llm_processing
boolean
kb_llm_system_prompt
string | null
Maximum string length: 120000
variables
string[] | null

List of pre-call variable names referenced in the prompt or greeting as {{name}}. Per-call values are supplied via the variables body field on POST /calls/start. Pass null to clear.

Maximum array length: 100
Pattern: ^[a-zA-Z_][a-zA-Z0-9_]*$
extraction_config
null | object

Custom Analysis config — runs an LLM extraction over the transcript after every completed call. Pass null to remove the config entirely. To pause extraction while keeping the config, use extraction_enabled: false instead.

tool_ack_config
null | object

Per-agent spoken acknowledgement while a tool call runs. Omit to leave the current setting unchanged; pass null to disable, or an object to update. No default is applied on update (unlike create).

extraction_enabled
boolean

Master switch for AUTOMATIC post-call extraction. Defaults to true. When false, extraction is skipped after calls even if extraction_config is set — the config is preserved, not deleted. Manual replay (POST /calls/{call_id}/extract) ignores this flag and runs as long as a config exists.

end_call_enabled
boolean

Toggle the agent's ability to end the call autonomously.

end_call_message
string | null

New farewell line. Pass null or empty string to fall back to the platform default.

Maximum string length: 500
end_call_instructions
string | null

Replace the free-text end-call instructions. Pass null or empty string to clear the section (the agent can still end calls via prompt logic if end_call_enabled is true). Replaces the prior end_call_triggers enum array.

Maximum string length: 2000
transfer_enabled
boolean

Toggle cold transfer. When false, transfer settings are cleared.

transfer_number
string | null

E.164 destination number. Required when transfer_enabled is true.

transfer_message
string | null

New announcement spoken before transferring. Pass null or empty string for the platform default.

Maximum string length: 500
transfer_instructions
string | null

Replace the free-text transfer instructions. Pass null or empty string to clear the section. Replaces the prior transfer_triggers enum array.

Maximum string length: 2000
user_idle_enabled
boolean

Toggle caller-silence follow-up for this agent. Defaults to true on new agents. Set false to prevent the bot from asking if the caller is still there or ending the call due to idle silence. Timeout and retry values remain platform-managed.

max_call_duration_secs
integer | null

Update the hard call-duration cap. Range 60-3600. Pass null to remove the cap. New agents default to 600 (10 minutes); existing agents created before the default landed may currently hold null.

Required range: 60 <= x <= 3600
background_audio_id
string<uuid> | null

Set or change the background-audio asset. Pass null to remove background audio.

background_audio_volume
number | null

Mixing volume override for background_audio_id. Range 0.0-1.0. Pass null to use the default (0.3).

Required range: 0 <= x <= 1

Response

Agent updated.

success
boolean
data
object