API Reference
All client APIs are versioned under /api/v1. This is FeltnerAI’s own API; it is not an
OpenAI-compatible gateway (see OpenAI Compatibility).
Authentication
Section titled “Authentication”- Browser login creates an HttpOnly session cookie and returns a CSRF token.
Cookie-authenticated mutations require an
X-CSRF-Tokenheader. - Portal login returns an opaque bearer session token. Bearer-authenticated requests do not require CSRF.
- Setup mutations require the one-time
X-Setup-Tokenheader.
Public endpoints
Section titled “Public endpoints”GET /healthGET /serverGET /setup/statusPOST /setup/test-provider (X-Setup-Token)POST /setup/complete (X-Setup-Token)POST /auth/loginGET /branding/logoGET /branding/faviconGET /branding/custom.cssAuthenticated endpoints
Section titled “Authenticated endpoints”POST /auth/logoutGET /auth/sessionPUT /auth/passwordPUT /auth/preferencesGET /models# Chat CRUD... /chatsGET /chats/{id}/messages# SSE generation, regeneration, and stop... /chats/{id}Streaming generation
Section titled “Streaming generation”Generation accepts a client UUID and emits Server-Sent Events named:
| Event | Meaning |
|---|---|
started | The server accepted the request and began streaming |
delta | An incremental chunk of the response |
completed | The response finished |
error | Generation failed |
The JSON payload of each event repeats the normalized event discriminator.
Administration endpoints
Section titled “Administration endpoints”# Users... /admin/users# Providers and connection tests... /admin/providersPOST /admin/providers/{id}/test# Models... /admin/providers/{id}/models... /admin/models# Server settings... /admin/server# Full-data export / importPOST /admin/data/exportPOST /admin/data/import# Branding configuration and uploads... /admin/branding