Update agent metadata
Update agent fields. Behavior depends on whether the agent has versioning enabled:
Versioned agents (have an active published version): only metadata fields are accepted:
name, description, avatarUrl, telephonyProductId, allowInboundCall, visibleToEveryone.
Submitting any config-level field returns 400 with the message
"Config changes must be made through a branch draft. Use PUT /agent/:id/branches/:branchId/draft.".
Use the branches flow. See GET /agent/{id}/branches to list branches and PUT /agent/{id}/branches/{branchId}/draft to open or edit a draft on a branch.
Non-versioned agents (no active version): all configuration fields are accepted,
the same full set as POST /agent.
400 is also returned when a cross-field constraint is violated (for example, north_indic language requires transcriberType: pulse).
403 is returned when selecting a gated model (gpt-5.2, electron-kogta, electron-kogta-v2)
without org-level access.
Authentication
API key from the console ApiKey collection, sent as Bearer token. Also accepts session cookies for browser-based auth.
Path parameters
Request
STT engine for the agent's turn detection and transcription. pulse-legacy is retained for older integrations. Only accepted on non-versioned agents; versioned agents change transcriber via the branch-draft flow (PUT /agent/{id}/branches/{branchId}/draft).
Deprecated. Applied as the agent's answer sources during the migration
window (replace semantics; the response carries Deprecation: true when
sent). Use POST /agent/{agentId}/answers instead.
Deprecated. false still works as a routing kill switch during the
migration window; true undoes a previous false, otherwise no effect.
Detach the number via DELETE /agent/{agentId}/answers/{sourceId} instead.