For AI agents: a documentation index is available at https://docs.plungeai.com/llms.txt. Append .md to any page URL, or send Accept: text/markdown, to get markdown. Setup instructions for agents are at https://docs.plungeai.com/agents.md. One ozk_ key opens every plane, models included.
Documentation Index: fetch the complete documentation index at /llms.txt. Use this file to discover all available pages before exploring further.
Route map — the planes that are not bots, one line per operation
The One API 2.3.0 has 114 operations.
The One API 2.3.0 has 114 operations. Bots, executions, schedules, triggers, connections, memory,
skills, templates and the Agent Call door are in bots-and-door.md; this file holds the rest, so every
operation is named in this skill. Every route takes Authorization: Bearer ozk_YOUR_KEY except the
three marked "no auth". Statuses below are the ones the spec lists per operation; 401 unauthorized is
on every authenticated route. Regenerate a client from GET /v1/openapi.json rather than copying this.
POST /v1/workflows/execute (inline YAML or JSON), POST /v1/workflows/{id}/execute (saved),
POST /v1/workflows/execute-stream and POST /v1/workflows/{id}/execute-stream (SSE),
GET /v1/workflows/results/{workflowId}/{taskId} (redeem), POST /v1/workflows/executions/{id}/cancel
(the same operation as POST /v1/executions/{id}/cancel). Bodies, events and errors are in that file; the saved-workflow CRUD and
versions are in bots-and-door.md.
MCP pass-through and outbound runs (plungeai-mcp-setup, plungeai-results-traces)
Route
Does
GET /v1/mcp/tools
the platform's MCP tool list (JSON-RPC tools/list result)
POST /v1/mcp
Streamable-HTTP MCP pass-through: any MCP client with an ozk_ key; JSON or SSE; a body that is not JSON is a JSON-RPC -32700 error, not the router envelope
{trace_id, spans, gateway_requests} for the x-trace-id you sent; 404 not_found for an unknown id or another key's (spans land asynchronously: retry in a few seconds)
legacy {model, prompt (one string), max_tokens?, stream?}, answered as text_completion
GET /v1/models
the priced catalog
GET /v1/models/{author}/{slug}/endpoints
the endpoint that serves one model, with per-token pricing
GET /v1/generation?id=
usage and cost of one completion (gen-… id or x-request-id)
GET /v1/credits
{data: {total_credits, total_usage}} in USD
GET /v1/key
the calling key: label, monthly limit, usage, rate limit
The OpenRouter drop-in base /api/v1 serves the same eight operations (POST /api/v1/chat/completions,
/embeddings, /completions; GET /api/v1/models, /generation, /credits, /key,
/models/{author}/{slug}/endpoints) with OpenRouter-shaped errors
({"error":{"code": <number>, "message", "metadata"}}). Point an OpenRouter client's base URL there; new code uses /v1.