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. Execution planes take an ozk_ key; the models plane takes an sk-ocean- key.

Documentation Index: fetch the complete documentation index at /llms.txt. Use this file to discover all available pages before exploring further.
POST/v1/agents/{id}/execute

Send prompt (or its alias input). The spec marks neither as required, but the handler answers 400 missing_prompt without one.

Headers: every response carries x-request-id (quote it in support requests). Send x-trace-id (optional, a UUID) to correlate this call across planes; reusing an id that already ran answers 409 duplicate_execution_id. Pick the body format with format or Accept (application/json, text/yaml, text/markdown, text/plain).

Authorization: send Authorization: Bearer $PLUNGE_API_KEY; X-API-Key: <ozk_ key> is accepted as an alternative.

Authorizations

Authorizationstringheaderrequired
Bearer token: Authorization: Bearer ozk_…. ozk_ platform API key (Authorization: Bearer ozk_…)

Path parameters

idstringrequired

Body

application/json
promptstring
inputstring
Alias for prompt
personastring
providerstring
Provider id (anthropic, openai, gemini, …); required alongside a pinned model
modelstring
maxTokensinteger
Max output tokens (alias: max_tokens)
max_tokensinteger
Alias for maxTokens
temperaturenumber
Sampling temperature, forwarded to the provider
top_pnumber
Nucleus sampling probability, forwarded to the provider
reasoning_effortstring
Reasoning-effort hint (e.g. low/medium/high) for reasoning models
thinking_levelstring
Extended-thinking level hint for models that support it
systemstring
System prompt / instructions for the run
messagesobject[]
Prior chat messages ([{role, content}]) instead of a single prompt
syncboolean

Default: true

streamboolean
When true, the response is an OpenAI-shaped chat.completion.chunk SSE (see the 200 text/event-stream variant) instead of a JSON result. Ignored by the async pointer path.

Default: false

formatenum<string>
Response format override (precedence: this field → Accept header → mirror of the request Content-Type). Default json. yaml = the envelope with Markdown as block scalars; markdown = the same result the MCP plane renders; text = the bare result content. An unknown value → 400 invalid_format.

Available options: json, yaml, markdown, text

Response

Resolved result. Default (stream absent/false): a JSON result object. With stream:true: an OpenAI-shaped chat.completion.chunk SSE — one primer chunk carrying delta.role="assistant", then a delta.content chunk per provider token, then a final chunk with delta:{} and finish_reason "stop" (or "length" when the model was truncated at max_tokens), then a literal data: [DONE] line. usage is emitted on the final chunk only when the provider reports the prompt/completion split (often omitted for streamed runs). Comment keepalives (: OCEAN PROCESSING) may appear every ~15s while idle. Errors before the first byte are the normal JSON error envelopes below (not SSE); an error after the first byte is a single data: {"error":{…}} frame and the stream closes WITHOUT [DONE]. Response header X-Execution-Id carries the execution id for result redemption / polling. Response format negotiates via the format field, an Accept header (application/json, text/yaml, text/markdown, text/plain), or the request Content-Type mirror; default JSON.

  • application/json
  • text/yaml
  • text/markdown
  • text/plain
  • text/event-stream

Response headers

x-request-idstringfrom code
Server-minted request id.
X-Execution-Idstringfrom code
The execution this call opened.
contentstringrequired
workflow_idstring
task_idstring
request_idstring

Stream events

EventDescription
chat.completion.chunk (role)The first chunk opens the assistant message.
chat.completion.chunk (content)One content delta.
chat.completion.chunk (stop)The last chunk carries finish_reason and usage.
[DONE]End of the stream.
chat.completion.chunk (role)
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"role":"assistant"},"finish_reason":null}]}
chat.completion.chunk (content)
data: {"object":"chat.completion.chunk","choices":[{"index":0,"delta":{"content":"pong"},"finish_reason":null}]}
chat.completion.chunk (stop)
data: {"choices":[{"index":0,"delta":{},"finish_reason":"stop"}],"usage":{"prompt_tokens":72,"completion_tokens":1,"total_tokens":73}}
[DONE]
data: [DONE]

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.