---
title: "Reset persona to its package version"
method: POST
path: "/api/v0/agent/personas/{persona_id}/reset-to-package"
tags: ["Agent Personas"]
---

# Reset persona to its package version

`POST /api/v0/agent/personas/{persona_id}/reset-to-package`

## Request

- Base URL: `https://api.outerport.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.outerport.com/api/v0/agent/personas/{persona_id}/reset-to-package`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/outerport/apis/outerport-api/docs/api/v0/agent/personas/:persona_id/reset-to-package/post.ts> (a function with typed inputs; its response is checked against the schema)

Restore every field of a package persona from its package template and let the package keep it up to date again. 409 for a persona no subscribed package owns.

## Path parameters

- `persona_id` string, uuid, required

## Response `200`

Successful Response

- AgentPersonaGetResponse: Response for getting an agent persona.
  - `id` string, uuid, required: The ID of the persona.
  - `name` string, required: The name of the persona.
  - `description` string, required: The description of the persona.
  - `prompt` string, required: The system prompt for the persona.
  - `builtin_tool_ids` string[]: Built-in tool IDs assigned to this persona.
  - `builtin_tool_configs` object: Per-builtin config keyed by tool id. Only configurable builtins (currently invoke_persona) carry config; the dict is sparse.
  - `knowledge_graph_id` string, uuid, nullable: The graph-enabled collection the persona's knowledge-graph tools target; null when none is wired, no such tool is enabled, or the collection was deleted.
  - `is_roaming` boolean: True iff the persona enables a tool that requires a workspace.
  - `custom_tool_ids` string[]: Custom tool UUIDs assigned to this persona.
  - `knowledge_base_ids` string[]: Knowledge base UUIDs assigned to this persona.
  - `skill_ids` string[]: Skill UUIDs preloaded by this persona: instruction documents the agent can read on demand via the read_skill tool.
  - `mcp_server_ids` string[]: MCP server UUIDs connected to this persona.
  - `package` AgentPersonaPackageSource: The package template a persona is a copy of, and which of its fields the person took over.
    - `template` string, required: "<package slug>/<role>" of the template.
    - `knowledge_base_id` string, uuid, nullable: The collection the copy is wired to.
    - `fields` string[], required: Every field the package template writes: name, description, prompt, tools, graph.
    - `edited_fields` string[]: The fields a person edited. The package never writes these until the persona is reset to the package version; every other field in ``fields`` follows the package.
  - `created_at` string, date-time, required: When the persona was created.
  - `updated_at` string, date-time, required: When the persona was last updated.

## Other responses

- `422`: Validation Error

## Changes

- **2026-11-09** `ecd5b922e78a`: 2 info
  - added the optional property `is_roaming` to the response with the `200` status
  - added the optional property `knowledge_graph_id` to the response with the `200` status
- **2026-10-22** `fd2664afd5a3`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/outerport/apis/outerport-api/changes/api/v0/agent/personas/:persona_id/reset-to-package/post.md)

---

[API](https://skmtc.dev/outerport/apis/outerport-api.md) - [All operations](https://skmtc.dev/outerport/apis/outerport-api/llms.txt) - [OpenAPI document](https://skmtc.dev/outerport/apis/outerport-api/revisions/08b5bf6f7f18?raw)
