Skip to main content
POST
/
v1
/
orgs
/
{org_id}
/
playbooks
Create a playbook (org-level or per-rep override)
curl --request POST \
  --url http://localhost:3000/v1/orgs/{org_id}/playbooks \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "content": "<string>",
  "rep_id": "<string>",
  "name": "<string>",
  "is_active": true,
  "file_name": "<string>",
  "metadata": {}
}
'

Documentation Index

Fetch the complete documentation index at: https://docs.goparlay.io/llms.txt

Use this file to discover all available pages before exploring further.

Authorizations

Authorization
string
header
required

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

Path Parameters

org_id
string
required

Body

application/json
content
string
required

Playbook body, typically markdown. Fed into every analysis for this org (or rep, if rep_id is set) when is_active=true. Max 500,000 chars.

Required string length: 1 - 500000
rep_id
string

Optional. When set, scopes the playbook to a single rep within this org instead of the whole org. Per-rep playbooks override the org-level playbook for that rep at analysis time. Use for A/B tests, per-coach customization, or per-end-user flows in consumer products. The rep must already exist (create one first via POST /v1/reps). Omit this field to create an org-level playbook (every rep inherits it as the baseline).

Required string length: 1 - 256
name
string

Display name for the playbook (e.g. "Q2 2026 Outbound Playbook").

Required string length: 1 - 200
is_active
boolean

Default true. Multiple is_active=true playbooks at the same scope are allowed; the most recently-created one wins at analysis time.

file_name
string

Original filename if the partner uploaded the playbook from disk.

Maximum string length: 200
metadata
object

Free-form key/value bag for partner-side bookkeeping. Not interpreted by Parlay.

Response

200

Default Response