> ## Documentation Index
> Fetch the complete documentation index at: https://dev.haico.gr/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Endpoint groups

> A map of the seven route groups, plus where to find the raw OpenAPI spec and interactive docs.

The API is organised into seven groups. This page is the map; the per-endpoint reference in the
*Endpoints* section of this tab is the territory.

| Group | Prefix | What it does |
| - | - | - |
| **Auth** | `/api/auth` | `me`, consent, and the browser-only register / login / verification flows |
| **API keys** | `/api/keys` | Create, list, and revoke personal access tokens (session-authenticated) |
| **Query** | `/api/query` | Feed a user message to the agent and stream its steps back as Server-Sent Events |
| **Conversations** | `/api/conversations` | List conversations, fetch the trajectory **graph**, and **branch** at a turn |
| **Workspace** | `/api/workspace` | CRUD on the shared workspace: objective, document, todos, preferences, artifacts, snapshots |
| **Feedback** | `/api/feedback` | Upsert or toggle one per-turn feedback row, and read your feedback for a thread |
| **Meta** | `/api/version` | Build identity of the running backend: version, channel, commit, built\_at, api\_contract (unauthenticated) |

> [!NOTE]
>
> Exact request and response fields for each route are in the **Endpoints** reference, generated
> from the OpenAPI spec. Treat that as the source of truth. Admin routes are deliberately not
> published: they are not part of the contract offered to API consumers.

## Spec and interactive docs

The raw spec and FastAPI's own interactive docs are served from the same host:

| What | URL |
| - | - |
| OpenAPI spec (JSON) | `https://haico.gr/api/openapi.json` |
| Swagger UI | `https://haico.gr/api/docs` |
| ReDoc | `https://haico.gr/api/redoc` |
| Health probe (no `/api` prefix) | `https://haico.gr/health` |
| Version (build identity) | `https://haico.gr/api/version` |

> [!NOTE]
>
> In the OpenAPI spec, the `servers` entries are the **host roots** (`https://haico.gr`) because
> every path already carries the `/api` prefix. That is why the playground targets the host root
> while the base URL table shows the prefix included.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.