Skip to main content
The NeuralCleave gateway exposes a REST API at http://localhost:7432/api/v1. All endpoints accept and return JSON.

Base URL

Change the host and port in [gateway] config if you’ve customized them.

Authentication

The API has no built-in authentication layer. When self-hosted on a local machine, the gateway is only accessible from localhost by default. If you expose the gateway publicly (behind nginx or a VPN), add authentication at the proxy level.

Response format

Success

Error

HTTP status codes follow standard conventions: 200 for success, 201 for created, 404 for not found, 422 for validation errors.

WebSocket

The gateway also exposes a WebSocket at:
The dashboard uses this for streaming chat replies (message_chunk / message_done frames) and voice transcripts.

Liveness and readiness

/health and /ready are deliberately distinct — an orchestrator that gates traffic admission on readiness (not mere liveness) should probe /ready.

Gateway status

memory.semantic_available reflects whether the local embedding model (sentence-transformers) has actually loaded — true/false once known, null if no embed call has happened yet since startup. Never triggers a model load itself (that can take a while on first use); it only reports cached state. See Memory. host fields are null (not 0) when psutil isn’t installed or a read fails — that distinguishes “unavailable” from “genuinely zero.”

API sections

Chat

Send messages and stream replies.

Voice

PTT, continuous listen, wake word status.

Channels

List, enable, and disable channels.

Settings

Update LLM provider, model, thinking level, and voice settings.

Models

Provider credential status and live reachability (GET /api/v1/models).

Usage

Per-model token usage and estimated cost (GET /api/v1/usage).

MCP

Spawn and manage the MCP stdio server.

Approvals

Review pending exec commands and manage the persistent allowlist.

Privacy

Privacy settings and the (now persistent) audit log.

Provider status

configured is null only for Bedrock, whose credentials are resolved by the AWS SDK’s own chain rather than tracked by NeuralCleave directly. Reads the live runtime’s ModelRouter when a gateway is running (reflecting any settings applied via /settings/model), otherwise builds one from the on-disk config.

Usage & cost

A live, in-process view (resets on restart) — scrape /api/v1/metrics for long-term history.