Update agent
Send only the fields you are changing. Each save is a new revision.
Nested objects (voice, end_call, voicemail, background_sound, analysis) are replaced whole, and so are the tools list and the flow graph, so send the complete object. behavior is the exception: it merges field by field.
To refuse a stale edit, add "if_revision" with the revision you read. If someone saved the agent in between, you get a 409 and nothing changes.
{"archived": true} stops new calls without deleting the agent, and {"archived": false} brings it back. Changes apply from the next call; calls already queued or running keep the version they started with.
Authorizations
Your workspace secret key, sk_live_ followed by 32 hex characters. Create one in the console under Developers.
Path Parameters
The agent's id (agt_…).
Body
Replace the whole analysis block. Omit output_schema to remove structured extraction. Requires enabled=true to run.
Archive to block new calls; false restores availability subject to draft validation. Accepted call snapshots remain unchanged.
off, office How the agent takes turns with the caller. Unlike other nested blocks, PATCH merges it field by field: omitted fields keep their current value and {} changes nothing. null resets it to the defaults (interruptions normal, adaptive_interruptions true).
The phone number this agent's outbound calls ring from when the call, or its campaign, does not choose one. Resolution is fixed: the call's (or campaign's) phone_number_id, else this, else the Mirai shared line. A number set here dials through its own provider connection (India destinations only) and is re-checked before every call: if it can no longer call, calls fail with 409 not_ready and campaigns pause, never falling back to the shared line. null unsets it. Kept across a rollback.
Drafts may have empty prompt or greeting, but cannot run calls.
Send call.processed when this agent has post-call tools, analysis or a flow (a flow agent's event carries the call's flow outcome). Set false to turn the event off.
500Optional node graph; makes this a flow agent. PATCH replaces the whole graph; null removes it.
PATCH only: reject a stale update with 409.
x >= 0Replace the entire input declaration. Null removes it and restores legacy string variables.
130 <= x <= 18001Other languages callers may speak. Speech recognition listens for them as well as the primary language. Optional; the primary language is never repeated here. Entries are reduced to their base code (gu-IN is saved as gu; or is accepted for od), duplicates and the primary language are dropped, and at most 4 remain. A PATCH replaces the whole list; [] or null clears it.
4hi, en, gu, mr, bn, ta, te, kn, ml, pa, od 12000At most 40 tools: 10 pre_call, 20 on_call, 10 post_call. A PATCH replaces the whole list; null empties it. To edit one tool, use PUT/DELETE /v2/agents/{id}/tools/{name}.
40Response
The updated agent