Update Agent

Update an existing agent’s configuration.

HTTP Request

$PATCH https://app.resemble.ai/api/v2/agents/{uuid}

URL Parameters

ParameterTypeDescription
uuidstringThe unique identifier of the agent

Request Body

All fields are optional. Only provide the fields you want to update. See Create Agent for complete field descriptions and validation rules.

AttributeTypeDescription
namestringUpdate agent name
voice_uuidstringUpdate voice
phone_number_idintegerUpdate linked phone number
languagesarrayUpdate supported languages
dynamic_variablesobjectUpdate dynamic variables
asrobjectUpdate ASR configuration
turnobjectUpdate turn configuration
llmobjectUpdate LLM configuration
webhooksarrayUpdate webhooks
system_toolsobjectUpdate system tool configurations

Note: When updating nested configurations (asr, llm, turn), you only need to provide the fields you want to change. Omitted fields will retain their current values.

Example Request

$curl --request PATCH "https://app.resemble.ai/api/v2/agents/550e8400-e29b-41d4-a716-446655440000" \
> -H "Authorization: Bearer YOUR_API_TOKEN" \
> -H "Content-Type: application/json" \
> --data '{
> "name": "Updated Agent Name",
> "llm": {
> "prompt": "Updated system prompt",
> "temperature": 0.5
> }
> }'

Example Request - Update Only ASR Keywords

$curl --request PATCH "https://app.resemble.ai/api/v2/agents/550e8400-e29b-41d4-a716-446655440000" \
> -H "Authorization: Bearer YOUR_API_TOKEN" \
> -H "Content-Type: application/json" \
> --data '{
> "asr": {
> "keywords": ["support", "billing", "account", "resemble"]
> }
> }'

Response (Success)

1{
2 "success": true,
3 "item": {
4 "agent": {
5 "name": "Updated Agent Name",
6 "uuid": "550e8400-e29b-41d4-a716-446655440000",
7 "languages": ["en-US"],
8 "dynamic_variables": {
9 "customer_name": "{{customer_name}}"
10 },
11 "created_at": "2025-01-27T10:00:00Z",
12 "updated_at": "2025-01-27T11:30:00Z",
13 "last_active_at": null,
14 "calls_today": 0,
15 "status": "inactive"
16 },
17 "asr": {
18 "provider": "deepgram",
19 "model": "nova-2",
20 "user_input_audio_format": "pcm_16000",
21 "keywords": []
22 },
23 "tts": {
24 "voice_uuid": "abc123",
25 "voice_name": "Professional Voice"
26 },
27 "turn": {
28 "turn_timeout": 7,
29 "silence_end_call_timeout": -1,
30 "mode": "silence"
31 },
32 "llm": {
33 "prompt": "Updated system prompt",
34 "provider": "openai",
35 "model": "gpt-4o",
36 "reasoning_effort": null,
37 "temperature": 0.5,
38 "timezone": null,
39 "built_in_tools": {}
40 },
41 "phone_numbers": [],
42 "tools_count": 2,
43 "webhooks_count": 0
44 },
45 "message": "Agent updated successfully"
46}

Response (Error)

1{
2 "success": false,
3 "errors": {
4 "agent": ["Agent not found or not accessible"],
5 "voice_uuid": ["Voice not found or not accessible"],
6 "asr.model": ["can't be blank"]
7 },
8 "message": "Failed to update agent"
9}

Validation Rules

See Create Agent for detailed validation rules. All create validations apply to updates.