Skip to content

REST API

Selu exposes an HTTP API on port 3000 by default. This API is primarily used by the web UI itself and is not a full public REST API. There is no OpenAPI spec and no versioned URL prefix.

http://localhost:3000/api

All endpoints (except the health check) require an active session cookie. Log in through the /login page in your browser to obtain a session. There are no API tokens or Bearer headers.

MethodPathAuthDescription
GET/api/healthNoHealth check. Returns server status.
MethodPathAuthDescription
GET/api/pipesYesList all configured pipes.
POST/api/pipesYesCreate a new pipe.
DELETE/api/pipes/{pipe_id}YesDelete a pipe.
MethodPathAuthDescription
GET/api/providersYesList available LLM providers.
PUT/api/providers/{id}/keyYesSet the API key for a provider.
PUT/api/providers/{id}/regionYesSet the region for a provider.
MethodPathAuthDescription
GET/api/credentials/system/{capability_id}YesList system credentials for a capability.
PUT/api/credentials/system/{capability_id}/{name}YesSet a system credential.
DELETE/api/credentials/system/{capability_id}/{name}YesDelete a system credential.
MethodPathAuthDescription
GET/api/credentials/user/{user_id}/{capability_id}YesList user credentials for a capability.
PUT/api/credentials/user/{user_id}/{capability_id}/{name}YesSet a user credential.
DELETE/api/credentials/user/{user_id}/{capability_id}/{name}YesDelete a user credential.
MethodPathAuthDescription
GET/api/tool-policiesYesList tool policies.
PUT/api/tool-policiesYesBulk set tool policies.
DELETE/api/tool-policiesYesDelete a user tool policy.
MethodPathAuthDescription
GET/api/approvalsYesList pending tool approvals.
POST/api/approvals/{id}YesResolve (approve or deny) a pending approval.