API reference
Every endpoint requires Authorization: Bearer <token> except /health. In dev mode any token maps to tenant dev; in production the token is verified against EvoPlatform's JWKS and the tenant comes from its claims. Admin endpoints additionally require a platform-admin token.
Core
| Method | Path | Purpose |
|---|---|---|
GET | /health | Liveness check |
GET/PUT/DELETE | /config/model | Tenant LLM config (DELETE = back to server default) |
GET/POST | /config/collections | List / create collections (embedding config fixed at creation) |
DELETE | /config/collections/{name} | Drop a collection and its vectors |
Ingestion
| Method | Path | Purpose |
|---|---|---|
POST | /ingest/file | Upload PDF / DOCX / CSV / TXT / MD / JSON (+ collection, optional doc_id for upsert) |
POST | /ingest/records | Ingest structured rows (+ collection) |
DELETE | /ingest/doc | Remove a document's chunks by doc_id |
Query
| Method | Path | Purpose |
|---|---|---|
POST | /query | Question + optional history, collection, source_types, allow_actions; returns answer + cited chunks |
GET | /ui | Chat UI |
The /query response carries two flags a client should render differently from an error, because neither one is a failure:
| Field | Meaning |
|---|---|
gated | Refused as unrelated to the indexed data, before any LLM call — the relevance gate working |
unconfigured | No usable model for this tenant; an administrator needs to add an API key |
It also returns question — the question actually executed, after a follow-up has been condensed against history — plus action_proposal when allow_actions was set.
Sources (connectors)
| Method | Path | Purpose |
|---|---|---|
GET | /sources/types | Available connector types |
GET/POST | /sources | List / register connector sources (config stored encrypted) |
GET/DELETE | /sources/{name} | Source detail (doc count, last run) / remove + purge its docs |
POST | /sources/{name}/sync | Queue a sync run |
GET | /sources/{name}/runs | Sync run history (added / updated / deleted / unchanged / errors) |
Admin (platform-admin token required)
| Method | Path | Purpose |
|---|---|---|
GET | /admin/tenant-links | List tenant links |
PUT | /admin/tenant-links/{platform_tenant_id} | Grant a platform tenant access to a data tenant's index |
DELETE | /admin/tenant-links/{platform_tenant_id} | Revoke a link |
GET | /admin/service-keys | List service keys |
POST | /admin/service-keys | Mint or rotate a service key (plaintext returned once) |
DELETE | /admin/service-keys/{name} | Revoke a service key |
See Ingesting data, Querying, Connectors, and Multi-tenancy & security for the request/response detail behind each group.