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.

A bot is the same row whichever door you use. The One API, the MCP server and the Ocean CLI read and write the rows Studio shows, take the same ozk_ key, and stop at the same stored policy. Pick the door that fits the caller: REST for code, MCP for an agent, the CLI for a terminal.

DoorAddressAuth
One API 2.3.0https://api.plungeai.comAuthorization: Bearer $PLUNGE_API_KEY
MCP server 2.6.0https://mcp.plungeai.com/v1The same key; tools are named plungeai_*
Ocean CLI 2.1.0ocean-cliocean-cli login, or OCEAN_API_KEY

Another account's id answers the same 404 <resource>_not_found as an id that does not exist. A storage or upstream failure is a generic 502; the message never carries database text. Every error is {"error": {"code", "message"}} with an X-Error-Code header. The response format is yours to pick (four wires).

Operations by door

Do thisRESTMCPCLI
Save a botPOST /v1/workflows with kind: botplungeai_workflow createworkflows create NAME FILE.yaml --kind bot
Check the YAMLThe save runs the lint and answers 422 invalid_workflowThe same, on create and updateworkflows validate FILE.yaml --kind bot (local)
Change it, version itPATCH /v1/workflows/{id}, POST .../versionsupdate, save_version, restore_versionworkflows update, save-version, restore
Copy a templatePOST /v1/templates/{id}/useplungeai_templatestemplates
Read or set permissions and capsGET, PUT /v1/workflows/{id}/permissionsplungeai_workflow permissions_get, permissions_setworkflows permissions get, set
Run itPOST /v1/workflows/{id}/executeplungeai_execute_workflowworkflows run ID
Answer a pause or approvePOST /v1/executions/{id}/continueplungeai_continueexecutions continue ID
Steer a running botPOST /v1/executions/{id}/steerplungeai_executions steerexecutions steer ID TEXT
List a run's filesGET /v1/executions/{id}/filesplungeai_executions filesexecutions files ID
Schedule itPOST /v1/schedules (run_at, ends_at)plungeai_schedule createschedules create (--cron @once --at, --ends-at)
Wake itPOST /v1/schedules/{id}/wakeplungeai_schedule wakeschedules wake ID --note TEXT
Add a trigger or hookPOST /v1/triggers/{webhook,email,hooks}plungeai_schedule webhook_mint, email_mint, hooks_mint (and _list, _delete)schedules triggers webhook|email|hooks mint|list|delete
Read its workspaceGET /v1/workflows/{id}/workspace-files, .../download?path=plungeai_workflow files, fileworkflows files ID [--download PATH --out FILE]
Read its inboxGET /v1/workflows/{id}/inboxplungeai_workflow inboxworkflows inbox ID
Bind a chatPOST /v1/workflows/{id}/bindings, DELETE .../{channel}/{sender_id}plungeai_workflow bindings, bind, unbindworkflows bindings list|bind|unbind
Pair a chatPOST /v1/channels/pair, GET /v1/channels; then send the code from the chatStudio or RESTStudio or REST
Manage bot groups/v1/bot-groups, .../{id}/threadplungeai_workflow groups, group_set, group_delete, group_threadbot-groups list|create|update|delete|thread
Give it an A2A doorNo REST route; Studio (Share, A2A)plungeai_workflow a2a_doorStudio (Share, A2A)
Search its runs, its memoryGET /v1/memory/runs, /v1/memory/recallplungeai_memorymemory

The operation pages are in the API reference: Bots, Schedules, Triggers and Executions.

The agent call door

POST /v1/execute takes the program as the body and always runs through the engine, so a saved bot keeps its stored policy. The body is JSON or YAML:

BodyRuns
agent: <id> and inputYour saved agent or bot, from its live YAML.
agent: <id>@3 and inputSnapshot 3 of it: a pinned version.
agent: <building block id> and that agent's own fieldsA registry agent as a one-task workflow.
workflow:, or a root name and tasks:An inline workflow.

dry_run: true validates and reports what would run without running it, spending anything or writing an execution row. stream: true answers as server-sent events. See Agent call.

MCP

  • Every tool takes user_request (the user's words) and most take format: markdown (default) or json. A tool that runs something also takes user_context (time zone, locale, place), merged over the zone the network request implies.
  • plungeai_get_result with format: json returns the structured result (status, result, tasks), not the rendered thread.
  • plungeai_workflow create takes kind: workflow, agent, bot or campaign.
  • plungeai_schedule create with schedule: "@once" needs run_at: without it the answer is run_at required.
  • permissions_set takes classes, locks, budget_usd_run and budget_usd_month; locks needs a team admin.
  • file returns a workspace file as base64, up to 5 MiB; a bigger file is refused with the REST download route to use instead.

CLI

The verbs below are in Ocean CLI 2.1.0. Run it from the repository today with npm run ocean-cli -- <verb>; once it is published it installs with npm install -g @plungeai/ocean and runs as ocean-cli.

  • Every verb takes --json (one JSON document on stdout) and, when it creates, runs or pays, --dry-run (prints the exact request and sends nothing).
  • Destructive verbs (delete, unbind, restore, forget) need --yes.
  • workflows permissions set reads the stored classes and locks first and sends only what you name, so one --class keeps the others.
  • Exit codes: 2 bad input, 3 auth, 4 API error or a run that needs input or approval, 5 timeout.
ocean-cli workflows permissions set <bot id> --class pay=ask --lock pay --budget-run 0.5 --budget-month 20
ocean-cli schedules create "Reminder" --type workflow --target <bot id> --cron @once --at 2026-10-06T09:00:00Z
ocean-cli bot-groups create --name research-crew --members <bot id>,<bot id>
ocean-cli executions steer <execution id> "also check the pricing page"

Planned: TI-33

Search is not available yet. Until it ships, use the page index or browse the sidebar.

Planned: TI-34

The docs assistant is not available yet. You can hand these docs to your own assistant instead.