Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

HTTP API

zorp-web’s API, served from the same origin as the UI. Loopback by default; any other bind requires a token, and every route below sits behind that check.

Routes for optional features exist in every build and answer with “off, and here is why” (or 501) when the feature is not compiled in, so a client can say why a button is disabled instead of interpreting a 404.

Sessions and turns

RouteMethodWhat it does
/api/healthGETLiveness
/api/sessionsGET, POSTList sessions, create one
/api/sessions/:idGETOne session
/api/sessions/:id/turnPOSTStart a turn
/api/sessions/:id/stopPOSTStop the running turn
/api/sessions/:id/eventsGETThe event stream (SSE)
/api/sessions/:id/approvePOSTAnswer a tool approval prompt
/api/sessions/:id/auto-approveGET, POSTRead or set auto-approve for one chat

Settings

RouteMethodWhat it does
/api/settingsGET, PUTRead and update settings. The key is never sent back out, only has_api_key
/api/settings/modelsGET, POSTList the endpoint’s models. A candidate key travels in the POST body, never a query string
/api/settings/testPOSTProbe the endpoint with a minimal real completion
/api/capabilitiesGETWhich optional tools are really there

Research

RouteMethodWhat it does
/api/sessions/:id/panelPOSTLaunch an adversarial review panel
/api/panel/lensesGETThe code-defined review lenses
/api/sessions/:id/investigatePOSTRun one investigate attempt
/api/investigate/statusGETWhether investigate is available, and whether forecasting is on
/api/investigate/ledgerGETRead what landed in the aryabhatta ledger. Names no model-authored text column

Files, recall, voice

RouteMethodWhat it does
/api/artifactsGETList workspace files
/api/artifacts/rawGETRead one, allowlisted extensions only
/api/recall/statusGETWhether conversation search is on
/api/recall/indexPOSTForce an index pass
/api/recall/searchGETSemantic search over conversations
/api/voice/statusGETVoice runtime status, read-only
/api/voice/waitPOSTStart readiness and wait for it
/api/voice/transcribePOSTTranscribe recorded audio (25 MB body limit)

The authoritative list is the router in zorp-web/src/api.rs.