OAuth (chat clients)
When you add Pleyor as a connector in Claude or ChatGPT, the host runs an OAuth flow against the Pleyor web app. You sign in, see a consent screen listing the scopes the connector needs, approve, pick a workspace (if you have multiple), and the host now holds a refresh token. Every MCP call attaches a bearer token derived from it. The flow:- Host fetches
/.well-known/oauth-authorization-serverfrom the API - Host dynamically registers itself as an OAuth client (Dynamic Client Registration)
- Browser opens to the Pleyor consent screen — you sign in (if needed) and approve scopes
- Host receives an authorization code, exchanges it at the token endpoint
- Host caches the access + refresh tokens; refreshes silently when access tokens expire
API keys (scripts)
For server-to-server use (cron jobs, internal tooling, custom MCP hosts), generate an API key from your Pleyor dashboard → Settings → API Keys. The key format ispk_live_*.
Send it as a Bearer token to the same endpoint:
Scopes
| Scope | Allows |
|---|---|
agents:read | List agents, read graphs, validate specs, port resolution, model suggestions, cost estimates |
agents:write | Create / replace / update / clone / delete agents, restore versions, manage shares |
runs:read | List runs, wait for runs, read pleyor://runs/{id} |
runs:execute | Trigger runs, cancel runs |
apps:read | List apps, read app metadata |
apps:execute | Trigger apps, publish apps, submit reviews |
assets:write | Upload assets via the connector |
openid | Required for OAuth flow (identity) |
offline_access | Required for OAuth refresh tokens |
agents:write or runs:execute.
Errors
If a tool needs a scope you don’t have, the call fails with a typed error:See also
Quickstart
Add the connector to Claude or ChatGPT.
Errors
Auth errors and how to recover from them.