---
title: "Load a structured mystery-shop persona into an agent (Intake Audit). Compiles the persona into a role-play system prompt + opener and applies it through the standard agent-update path (Vapi sync, change-history audit, owner-edit guard). Requires agents:write."
method: POST
path: "/v1/agents/persona"
---

# Load a structured mystery-shop persona into an agent (Intake Audit). Compiles the persona into a role-play system prompt + opener and applies it through the standard agent-update path (Vapi sync, change-history audit, owner-edit guard). Requires agents:write.

`POST /v1/agents/persona`

## Request

- Base URL: `https://www.kaicalls.com/api`
- URL: `https://www.kaicalls.com/api/v1/agents/persona`
- Auth: HTTP bearer

## Request body

- AgentPersonaLoad
  - `agent_id` string, uuid, required
  - `first_message` string: Optional override of the opener derived from the persona.
  - `voice` object
  - `model` object
  - `persona` object, required
    - `lead_name` string, required
    - `scenario` string, required
    - `objective` string
    - `script` string
    - `persona_traits` string
    - `facts_to_reveal` string[]
    - `facts_to_withhold` string[]
    - `callback_number` string
    - `opener` string

## Response `200`

Persona loaded; returns the agent-update result plus persona_summary.

---

[API](https://skmtc.dev/kaicalls/apis/kaicalls-public-api.md) · [All operations](https://skmtc.dev/kaicalls/apis/kaicalls-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/kaicalls/apis/kaicalls-public-api/revisions/e607fc6cf36e?raw)
