---
title: "Create a coaching persona, optionally scoped to folders and files"
method: POST
path: "/coaching/personas"
tags: ["Coaching"]
---

# Create a coaching persona, optionally scoped to folders and files

`POST /coaching/personas`

## Request

- Base URL: `https://developer.solofire.com/v1`
- URL: `https://developer.solofire.com/v1/coaching/personas`
- Auth: HTTP bearer

Requires the `coaching.write` scope.

## Request body

- object
  - `role` string, required: The buyer role the AI plays, e.g. "Interventional radiologist".
  - `description` string: Who they are: priorities, objections, how they talk.
  - `folder_ids` unknown[]: Folders (expanded recursively) the persona may reference. Empty, with file_ids empty, means the whole library.
    - unknown
  - `file_ids` unknown[]: Individual files the persona may reference.
    - unknown
  - `configuration_ids` unknown[]: Configurations whose reps may pick this persona for free-form practice.
    - unknown
  - `sort_order` integer: Position in persona lists. Defaults to 0.

## Response `201`

Created

- object

## Other responses

- `401`: `unauthorized` No credential was presented. `invalid_token` The API key is unknown, revoked or malformed. `token_expired` The API key has passed its expiry.
- `403`: `insufficient_scope` The credential does not carry the required scope. `forbidden` The member this credential acts as lacks the permission. `feature_not_enabled` API access is not enabled for this company.
- `405`: `method_not_allowed` The path exists but not for this method.
- `413`: `payload_too_large` The request body is too large.
- `422`: `validation_failed` A parameter or body field is invalid.
- `429`: `rate_limited` The credential is over its request budget.
- `500`: `internal_error` Something went wrong on our side.

---

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