Skip to main content

Crate brainos_httpadapter

Crate brainos_httpadapter 

Source
Expand description

§Brain HTTP REST API Adapter

Exposes Brain’s signal processing pipeline over HTTP using axum.

§Routes

  • GET /health — health check (no auth required)
  • GET /metrics — Prometheus-format counters (no auth required)
  • GET /ui — embedded memory explorer web UI (no auth required)
  • GET /openapi.json — OpenAPI 3.0 specification (no auth required)
  • GET /api — Swagger UI (no auth required)
  • POST /v1/signals — submit a signal (requires write)
  • GET /v1/signals/:id — retrieve cached signal response (requires read)
  • POST /v1/memory/search — semantic search over stored facts (requires read)
  • GET /v1/memory/facts — list all semantic facts (requires read)
  • GET /v1/events — SSE stream of signal events + proactive notifications (requires read)

§Authentication

All /v1/* routes require Authorization: Bearer <api-key> header. A random key is generated on brain init and printed to stdout.

Structs§

AppState
Shared state for all HTTP handlers.
ExportJson
Export envelope (GET /v1/memory/export).
FactJson
A single fact in JSON form (GET /v1/memory/facts, search results).
HealthResponse
Health check response.
ImportRequest
Import request body (POST /v1/memory/import).
ImportResponse
Import response (POST /v1/memory/import).
Metrics
Atomic counters exposed at GET /metrics in Prometheus text format.
NamespaceJson
Namespace statistics (GET /v1/memory/namespaces).
SearchRequest
Search request body (POST /v1/memory/search).
SignalRequest
Incoming signal body (POST /v1/signals).

Enums§

HttpAdapterError

Functions§

create_router
Build the axum router with all routes.
serve
Start the HTTP server, binding to host:port.