POST
/
v2
/
personas
curl --request POST \
  --url https://tavusapi.com/v2/personas \
  --header 'Content-Type: application/json' \
  --header 'x-api-key: <api-key>' \
  --data '{
  "persona_name": "Life Coach",
  "system_prompt": "As a Life Coach, you are a dedicated professional who specializes in...",
  "context": "Here are a few times that you have helped an individual make a breakthrough in...",
  "default_replica_id": "r79e1c033f",
  "layers": {
    "llm": {
      "model": "<string>",
      "base_url": "your-base-url",
      "api_key": "your-api-key",
      "tools": [
        {
          "type": "function",
          "function": {
            "name": "get_current_weather",
            "description": "Get the current weather in a given location",
            "parameters": {
              "type": "object",
              "properties": {
                "location": {
                  "type": "string",
                  "description": "The city and state, e.g. San Francisco, CA"
                },
                "unit": {
                  "type": "string",
                  "enum": [
                    "celsius",
                    "fahrenheit"
                  ]
                }
              },
              "required": [
                "location"
              ]
            }
          }
        }
      ]
    },
    "tts": {
      "api_key": "your-api-key",
      "tts_engine": "cartesia",
      "external_voice_id": "external-voice-id",
      "voice_settings": {
        "speed": "normal",
        "emotion": [
          "positivity:high",
          "curiosity"
        ]
      },
      "playht_user_id": "your-playht-user-id",
      "tts_emotion_control": "false",
      "tts_model_name": "sonic"
    },
    "perception": {
      "perception_model": "raven-0",
      "ambient_awareness_queries": [
        "Is the user showing an ID card?",
        "Does the user appear distressed or uncomfortable?"
      ],
      "perception_tool_prompt": "You have a tool to notify the system when an ID card is detected, named `notify_if_id_shown`. You MUST use this tool when a form of ID is detected.",
      "perception_tools": [
        {
          "name": "notify_if_id_shown",
          "description": "Notify the system when an ID card is detected"
        }
      ]
    },
    "stt": {
      "stt_engine": "tavus-turbo",
      "participant_pause_sensitivity": "low",
      "participant_interrupt_sensitivity": "low",
      "hotwords": "This is a hotword example",
      "smart_turn_detection": true
    }
  }
}'
{
  "persona_id": "p5317866",
  "persona_name": "Life Coach",
  "created_at": "<string>"
}

Authorizations

x-api-key
string
header
required

Body

application/json
persona_name
string

A name for the persona.

Example:

"Life Coach"

system_prompt
string

This is the system prompt that will be used by the llm.

Example:

"As a Life Coach, you are a dedicated professional who specializes in..."

context
string

This is the context that will be used by the llm.

Example:

"Here are a few times that you have helped an individual make a breakthrough in..."

default_replica_id
string

The default replica_id associated with this persona if one exists. When creating a conversation, a persona_id with a default_replica_id associated can we used to create a conversation without specifying a replica_id.

Example:

"r79e1c033f"

layers
object

Response

200 - application/json
persona_id
string

A unique identifier for the persona.

Example:

"p5317866"

persona_name
string

The name of the persona.

Example:

"Life Coach"

created_at
string

The date and time the persona was created.