Skip to main content
PUT
/
v1
/
personas
/
{id}
update persona
curl --request PUT \
  --url https://api.anam.ai/v1/personas/{id} \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "systemPrompt": "You are a helpful assistant who speaks concisely."
}
'
{
  "id": "00000000-0000-0000-0000-000000000000",
  "name": "Cara",
  "description": "A helpful assistant",
  "personaPreset": "",
  "avatar": {
    "id": "071b0286-4cce-4808-bee2-e642f1062de3",
    "displayName": "Liv",
    "variantName": "home",
    "imageUrl": "https://lab.anam.ai/persona_thumbnails/liv_home.png",
    "videoUrl": "https://anam-prod.r2.cloudflarestorage.com/avatars/v2/stock/liv_home/idling_video.mp4?X-Amz-Signature=...",
    "createdAt": "2026-04-20T10:00:00.000Z",
    "updatedAt": "2026-04-20T10:00:00.000Z",
    "createdByOrganizationId": null,
    "availableVersions": [
      "v1",
      "v2",
      "cara-4-3"
    ],
    "activeVersion": "v2"
  },
  "avatarModel": "cara-3",
  "voice": {
    "id": "de23e340-1416-4dd8-977d-065a7ca11697",
    "displayName": "Lucy - Fresh & Casual",
    "provider": "ELEVENLABS",
    "providerVoiceId": "lcMyyd2HUfFzxdCaC4Ta",
    "providerModelId": "eleven_flash_v2_5",
    "sampleUrl": "https://newgxnc1uqs0jnqm.public.blob.vercel-storage.com/voice-samples/de23e340-1416-4dd8-977d-065a7ca11697/1760617899390.mp3",
    "previewSampleUrl": "https://newgxnc1uqs0jnqm.public.blob.vercel-storage.com/voice-samples/de23e340-1416-4dd8-977d-065a7ca11697/1760617899390.mp3",
    "gender": "FEMALE",
    "country": "GB",
    "description": "Energetic and youthful British voice, perfect for narrations and conversational agents.",
    "displayTags": [
      "fast"
    ],
    "isZdr": true,
    "createdByOrganizationId": null,
    "createdAt": "2026-04-20T10:00:00.000Z",
    "updatedAt": "2026-04-20T10:00:00.000Z"
  },
  "voiceSpeed": 1,
  "llmId": "a7cf662c-2ace-4de1-a21e-ef0fbf144bb7",
  "brain": {
    "personality": null,
    "systemPrompt": "You are a helpful assistant."
  },
  "tools": [],
  "knowledge": [],
  "shareLinks": null,
  "primaryShareLink": null,
  "enableAudioPassthrough": false,
  "skipGreeting": false,
  "zeroDataRetention": false,
  "voiceDetectionOptions": null,
  "voiceGenerationOptions": null,
  "widgetConfig": {},
  "createdAt": "2026-04-20T10:00:00.000Z",
  "updatedAt": "2026-04-20T10:00:00.000Z"
}

Authorizations

Authorization
string
header
required

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

Path Parameters

id
string
required

Persona id

Body

application/json

Partial persona update. Only the fields you include are changed; omit a field to leave it unchanged. Changing avatarId may reset avatarModel if the new avatar doesn't support the previous model; changing voiceId resets any existing voiceGenerationOptions unless new ones are supplied.

name
string

Name of the persona

Example:

"Cara"

description
string

Description of the persona, for example "A helpful assistant". Does not affect the persona's behavior.

avatarId
string

The avatar to use.

Example:

"071b0286-4cce-4808-bee2-e642f1062de3"

avatarModel
enum<string>

Avatar model version. Models with the '-latest' suffix are invite only.

Available options:
cara-2,
cara-3,
cara-4-latest
Example:

"cara-3"

voiceId
string

The voice to use.

Example:

"de23e340-1416-4dd8-977d-065a7ca11697"

llmId
string

The LLM to use. To disable the LLM, use 'CUSTOMER_CLIENT_V1'.

Example:

"a7cf662c-2ace-4de1-a21e-ef0fbf144bb7"

systemPrompt
string

System prompt for the LLM

Example:

"You are a helpful assistant"

skipGreeting
boolean

Whether to skip the greeting message when starting a session with this persona.

Example:

false

uninterruptibleGreeting
boolean

When true, the greeting message cannot be interrupted by the user.

Example:

false

zeroDataRetention
boolean

When true, session data is not stored after the conversation ends

Example:

false

voiceDetectionOptions
object

Options for voice activity detection during user speech input.

languageCode
string

ISO 639-1 formatted language code override for transcription, replaces organisation level settings and multilingual (default) mode.

Example:

"en"

voiceGenerationOptions
ElevenLabs V1 · object

Configuration options for voice generation.

toolIds
string[]

Array of tool IDs to attach to the persona. Replaces any existing tool associations.

Example:
["tool-id-1", "tool-id-2"]

Response

Successfully updated persona

Full persona shape returned by the create, get, and update endpoints.

id
string<uuid>

Unique identifier for the persona.

name
string

Human-readable name of the persona.

description
string | null

Free-form description of the persona.

personaPreset
string

Name of the preset the persona was cloned from, if any.

avatar
object

Avatar currently attached to the persona.

avatarModel
string | null

Public model version (e.g. cara-3) used when rendering the avatar.

voice
object

Voice currently attached to the persona.

voiceSpeed
number | null

Speech rate multiplier applied to the voice.

llmId
string<uuid> | null

ID of the LLM the persona uses, or null for presets that don't run an LLM.

brain
object

Persona behaviour configuration applied on top of the raw LLM.

tools
object[]

Tool configurations currently attached to the persona.

knowledge
object[]

Knowledge group attachments currently active on the persona.

All share links ever issued for this persona.

The primary share link attached to the persona, if one has been created.

enableAudioPassthrough
boolean

Whether audio is passed through from the client instead of being generated server-side.

skipGreeting
boolean

Whether the persona skips the greeting message at the start of a session.

zeroDataRetention
boolean

Whether session data is discarded instead of stored after the conversation ends.

voiceDetectionOptions
object

Voice activity detection tuning for user speech.

voiceGenerationOptions
ElevenLabs V1 · object

Provider-specific voice generation tuning.

widgetConfig
object

Widget rendering overrides (e.g. removing the watermark).

createdAt
string<date-time>

Timestamp when the persona was created.

updatedAt
string<date-time>

Timestamp when the persona was last updated.

Last modified on April 22, 2026