Skip to navigation

Update agent metadata

View as Markdown

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

AuthorizationBearer

API key from the console ApiKey collection, sent as Bearer token. Also accepts session cookies for browser-based auth.

Path parameters

idstringRequired

Request

This endpoint expects an object.
namestringOptional
Name of the agent.
descriptionstringOptional
Description of the agent.
avatarUrlstringOptional
URL of the agent's avatar image.
visibleToEveryonebooleanOptional
Whether the agent is visible to all members of the organization.
transcriberTypeenumOptional

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).

Allowed values:
telephonyProductIdlist of stringsOptionalDeprecated

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.

allowInboundCallbooleanOptionalDeprecated

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.

Response

Agent updated successfully
statusbooleanOptional
datastringOptional
The ID of the updated agent

Errors

400
Bad Request Error
401
Unauthorized Error
403
Forbidden Error
404
Not Found Error
500
Internal Server Error