Skip to main content
The Docker executor exposes three HTTP endpoints:
  • POST /execute executes the workflow and returns JSON by default.
  • POST /validate validates workflow source and returns validation diagnostics.
  • POST /format formats workflow source and returns canonical output.
POST /execute switches to Server-Sent Events when the request includes Accept: text/event-stream.

Request body

/execute response

Successful responses return the workflow output block as JSON.
Errors use a structured JSON body.

/execute streaming response

When Accept: text/event-stream is set, /execute responds with text/event-stream. A typical stream contains lifecycle events, agent events, tool/MCP events, and a final completion event.
Exact event payloads may evolve with the executor. Treat workflow_completed as the terminal success event and workflow_failed as the terminal failure event. Streaming responses include an x-superwire-run-id response header. If the client connection drops unintentionally, reconnect with GET /execute/{run_id}/events and pass the last received SSE event id with the Last-Event-ID header. To intentionally stop backend work for a running stream, call:
Cancelling is different from disconnecting. A disconnected stream remains available for reconnection; a cancelled run is marked terminal and the executor aborts its backend task.

Security notes

  • Do not log raw request bodies in production because secrets contains provider and MCP credentials.
  • Prefer short-lived API keys or internal credentials when possible.
  • Keep .wire source free of hardcoded secrets.