docs: comprehensive docs review + i18n sync

- Fix .gitignore: add a2a-server.md, auto-combo.md, mcp-server.md, new-features/ to whitelist
- Rewrite FEATURES.md: 18 sections covering v2.0.12 state (Playground, Themes, CLI Agents, Media, API Keys, Audit Log)
- API_REFERENCE.md: add ACP Agents endpoints (/api/acp/agents GET/POST/DELETE)
- Sync all 6 root docs to 29 i18n directories (174 files)
- Remove stale git-tracked docs (adr/, i18n-tasks/)
This commit is contained in:
diegosouzapw 2026-03-07 12:18:17 -03:00
parent 2306081dab
commit 91f3bd4056
210 changed files with 37754 additions and 31332 deletions

View file

@ -1,12 +1,12 @@
# Referință API
# API Reference
🌐 **Languages:** 🇺🇸 [English](../../API_REFERENCE.md) | 🇧🇷 [Português (Brasil)](../pt-BR/API_REFERENCE.md) | 🇪🇸 [Español](../es/API_REFERENCE.md) | 🇫🇷 [Français](../fr/API_REFERENCE.md) | 🇮🇹 [Italiano](../it/API_REFERENCE.md) | 🇷🇺 [Русский](../ru/API_REFERENCE.md) | 🇨🇳 [中文 (简体)](../zh-CN/API_REFERENCE.md) | 🇩🇪 [Deutsch](../de/API_REFERENCE.md) | 🇮🇳 [हिन्दी](../in/API_REFERENCE.md) | 🇹🇭 [ไทย](../th/API_REFERENCE.md) | 🇺🇦 [Українська](../uk-UA/API_REFERENCE.md) | 🇸🇦 [العربية](../ar/API_REFERENCE.md) | 🇯🇵 [日本語](../ja/API_REFERENCE.md) | 🇻🇳 [Tiếng Việt](../vi/API_REFERENCE.md) | 🇧🇬 [Български](../bg/API_REFERENCE.md) | 🇩🇰 [Dansk](../da/API_REFERENCE.md) | 🇫🇮 [Suomi](../fi/API_REFERENCE.md) | 🇮🇱 [עברית](../he/API_REFERENCE.md) | 🇭🇺 [Magyar](../hu/API_REFERENCE.md) | 🇮🇩 [Bahasa Indonesia](../id/API_REFERENCE.md) | 🇰🇷 [한국어](../ko/API_REFERENCE.md) | 🇲🇾 [Bahasa Melayu](../ms/API_REFERENCE.md) | 🇳🇱 [Nederlands](../nl/API_REFERENCE.md) | 🇳🇴 [Norsk](../no/API_REFERENCE.md) | 🇵🇹 [Português (Portugal)](../pt/API_REFERENCE.md) | 🇷🇴 [Română](../ro/API_REFERENCE.md) | 🇵🇱 [Polski](../pl/API_REFERENCE.md) | 🇸🇰 [Slovenčina](../sk/API_REFERENCE.md) | 🇸🇪 [Svenska](../sv/API_REFERENCE.md) | 🇵🇭 [Filipino](../phi/API_REFERENCE.md)
🌐 **Languages:** 🇺🇸 [English](API_REFERENCE.md) | 🇧🇷 [Português (Brasil)](i18n/pt-BR/API_REFERENCE.md) | 🇪🇸 [Español](i18n/es/API_REFERENCE.md) | 🇫🇷 [Français](i18n/fr/API_REFERENCE.md) | 🇮🇹 [Italiano](i18n/it/API_REFERENCE.md) | 🇷🇺 [Русский](i18n/ru/API_REFERENCE.md) | 🇨🇳 [中文 (简体)](i18n/zh-CN/API_REFERENCE.md) | 🇩🇪 [Deutsch](i18n/de/API_REFERENCE.md) | 🇮🇳 [हिन्दी](i18n/in/API_REFERENCE.md) | 🇹🇭 [ไทย](i18n/th/API_REFERENCE.md) | 🇺🇦 [Українська](i18n/uk-UA/API_REFERENCE.md) | 🇸🇦 [العربية](i18n/ar/API_REFERENCE.md) | 🇯🇵 [日本語](i18n/ja/API_REFERENCE.md) | 🇻🇳 [Tiếng Việt](i18n/vi/API_REFERENCE.md) | 🇧🇬 [Български](i18n/bg/API_REFERENCE.md) | 🇩🇰 [Dansk](i18n/da/API_REFERENCE.md) | 🇫🇮 [Suomi](i18n/fi/API_REFERENCE.md) | 🇮🇱 [עברית](i18n/he/API_REFERENCE.md) | 🇭🇺 [Magyar](i18n/hu/API_REFERENCE.md) | 🇮🇩 [Bahasa Indonesia](i18n/id/API_REFERENCE.md) | 🇰🇷 [한국어](i18n/ko/API_REFERENCE.md) | 🇲🇾 [Bahasa Melayu](i18n/ms/API_REFERENCE.md) | 🇳🇱 [Nederlands](i18n/nl/API_REFERENCE.md) | 🇳🇴 [Norsk](i18n/no/API_REFERENCE.md) | 🇵🇹 [Português (Portugal)](i18n/pt/API_REFERENCE.md) | 🇷🇴 [Română](i18n/ro/API_REFERENCE.md) | 🇵🇱 [Polski](i18n/pl/API_REFERENCE.md) | 🇸🇰 [Slovenčina](i18n/sk/API_REFERENCE.md) | 🇸🇪 [Svenska](i18n/sv/API_REFERENCE.md) | 🇵🇭 [Filipino](i18n/phi/API_REFERENCE.md)
Referință completă pentru toate punctele finale API OmniRoute.
Complete reference for all OmniRoute API endpoints.
---
## Cuprins
## Table of Contents
- [Chat Completions](#chat-completions)
- [Embeddings](#embeddings)
@ -20,7 +20,7 @@ Referință completă pentru toate punctele finale API OmniRoute.
---
## Finalizări de chat
## Chat Completions
```bash
POST /v1/chat/completions
@ -36,21 +36,21 @@ Content-Type: application/json
}
```
### Anteturi personalizate
### Custom Headers
| Antet | Direcție | Descriere |
| ------------------------ | -------- | ----------------------------------------------- |
| `X-OmniRoute-No-Cache` | Cerere | Setați la `true` pentru a ocoli memoria cache |
| `X-OmniRoute-Progress` | Cerere | Setați la `true` pentru evenimentele de progres |
| `Idempotency-Key` | Cerere | Tasta Dedup (fereastră 5s) |
| `X-Request-Id` | Cerere | Cheie alternativă de deducție |
| `X-OmniRoute-Cache` | Răspuns | `HIT` sau `MISS` (non-streaming) |
| `X-OmniRoute-Idempotent` | Răspuns | `true` dacă este deduplicat |
| `X-OmniRoute-Progress` | Răspuns | `enabled` dacă urmărirea progresului pe |
| Header | Direction | Description |
| ------------------------ | --------- | --------------------------------- |
| `X-OmniRoute-No-Cache` | Request | Set to `true` to bypass cache |
| `X-OmniRoute-Progress` | Request | Set to `true` for progress events |
| `Idempotency-Key` | Request | Dedup key (5s window) |
| `X-Request-Id` | Request | Alternative dedup key |
| `X-OmniRoute-Cache` | Response | `HIT` or `MISS` (non-streaming) |
| `X-OmniRoute-Idempotent` | Response | `true` if deduplicated |
| `X-OmniRoute-Progress` | Response | `enabled` if progress tracking on |
---
## Înglobări
## Embeddings
```bash
POST /v1/embeddings
@ -63,7 +63,7 @@ Content-Type: application/json
}
```
Furnizori disponibili: Nebius, OpenAI, Mistral, Together AI, Fireworks, NVIDIA.
Available providers: Nebius, OpenAI, Mistral, Together AI, Fireworks, NVIDIA.
```bash
# List all embedding models
@ -72,7 +72,7 @@ GET /v1/embeddings
---
## Generare de imagini
## Image Generation
```bash
POST /v1/images/generations
@ -86,7 +86,7 @@ Content-Type: application/json
}
```
Furnizori disponibili: OpenAI (DALL-E), xAI (Grok Image), Together AI (FLUX), Fireworks AI.
Available providers: OpenAI (DALL-E), xAI (Grok Image), Together AI (FLUX), Fireworks AI.
```bash
# List all image models
@ -95,7 +95,7 @@ GET /v1/images/generations
---
## Listează modele
## List Models
```bash
GET /v1/models
@ -106,22 +106,22 @@ Authorization: Bearer your-api-key
---
## Puncte finale de compatibilitate
## Compatibility Endpoints
| Metoda | Calea | Format |
| ------ | --------------------------- | ------------------------ |
| POST | `/v1/chat/completions` | OpenAI |
| POST | `/v1/messages` | antropic |
| POST | `/v1/responses` | Răspunsuri OpenAI |
| POST | `/v1/embeddings` | OpenAI |
| POST | `/v1/images/generations` | OpenAI |
| GET | `/v1/models` | OpenAI |
| POST | `/v1/messages/count_tokens` | antropic |
| GET | `/v1beta/models` | Gemeni |
| POST | `/v1beta/models/{...path}` | Gemeni genereazăConținut |
| POST | `/v1/api/chat` | Ollama |
| Method | Path | Format |
| ------ | --------------------------- | ---------------------- |
| POST | `/v1/chat/completions` | OpenAI |
| POST | `/v1/messages` | Anthropic |
| POST | `/v1/responses` | OpenAI Responses |
| POST | `/v1/embeddings` | OpenAI |
| POST | `/v1/images/generations` | OpenAI |
| GET | `/v1/models` | OpenAI |
| POST | `/v1/messages/count_tokens` | Anthropic |
| GET | `/v1beta/models` | Gemini |
| POST | `/v1beta/models/{...path}` | Gemini generateContent |
| POST | `/v1/api/chat` | Ollama |
### Rute de furnizori dedicate
### Dedicated Provider Routes
```bash
POST /v1/providers/{provider}/chat/completions
@ -129,11 +129,11 @@ POST /v1/providers/{provider}/embeddings
POST /v1/providers/{provider}/images/generations
```
Prefixul furnizorului este adăugat automat dacă lipsește. Modelele nepotrivite revin `400`.
The provider prefix is auto-added if missing. Mismatched models return `400`.
---
## Cache semantic
## Semantic Cache
```bash
# Get cache stats
@ -143,7 +143,7 @@ GET /api/cache
DELETE /api/cache
```
Exemplu de răspuns:
Response example:
```json
{
@ -162,154 +162,164 @@ Exemplu de răspuns:
---
## Tabloul de bord și managementul
## Dashboard & Management
### Autentificare
### Authentication
| Punct final | Metoda | Descriere |
| ----------------------------- | ------- | ------------------------------- |
| `/api/auth/login` | POST | Autentificare |
| `/api/auth/logout` | POST | Deconectare |
| `/api/settings/require-login` | GET/PUT | Comutare autentificare necesară |
| Endpoint | Method | Description |
| ----------------------------- | ------- | --------------------- |
| `/api/auth/login` | POST | Login |
| `/api/auth/logout` | POST | Logout |
| `/api/settings/require-login` | GET/PUT | Toggle login required |
### Managementul furnizorilor
### Provider Management
| Punct final | Metoda | Descriere |
| ---------------------------- | --------------- | ---------------------------------- |
| `/api/providers` | GET/POST | Listează / creează furnizori |
| `/api/providers/[id]` | GET/PUT/DELETE | Gestionați un furnizor |
| `/api/providers/[id]/test` | POST | Testează conexiunea furnizorului |
| `/api/providers/[id]/models` | GET | Listați modele de furnizori |
| `/api/providers/validate` | POST | Validați configurația furnizorului |
| `/api/provider-nodes*` | Diverse | Gestionarea nodurilor furnizorului |
| `/api/provider-models` | GET/POST/DELETE | Modele personalizate |
| Endpoint | Method | Description |
| ---------------------------- | --------------- | ------------------------ |
| `/api/providers` | GET/POST | List / create providers |
| `/api/providers/[id]` | GET/PUT/DELETE | Manage a provider |
| `/api/providers/[id]/test` | POST | Test provider connection |
| `/api/providers/[id]/models` | GET | List provider models |
| `/api/providers/validate` | POST | Validate provider config |
| `/api/provider-nodes*` | Various | Provider node management |
| `/api/provider-models` | GET/POST/DELETE | Custom models |
### Fluxuri OAuth
### OAuth Flows
| Punct final | Metoda | Descriere |
| -------------------------------- | ------- | --------------------------- |
| `/api/oauth/[provider]/[action]` | Diverse | OAuth specific furnizorului |
| Endpoint | Method | Description |
| -------------------------------- | ------- | ----------------------- |
| `/api/oauth/[provider]/[action]` | Various | Provider-specific OAuth |
### Rutare și configurare
### Routing & Config
| Punct final | Metoda | Descriere |
| --------------------- | -------- | ---------------------------------- |
| `/api/models/alias` | GET/POST | Aliasuri de model |
| `/api/models/catalog` | GET | Toate modelele după furnizor + tip |
| `/api/combos*` | Diverse | Combo management |
| `/api/keys*` | Diverse | Gestionarea cheilor API |
| `/api/pricing` | GET | Prețul modelului |
| Endpoint | Method | Description |
| --------------------- | -------- | ----------------------------- |
| `/api/models/alias` | GET/POST | Model aliases |
| `/api/models/catalog` | GET | All models by provider + type |
| `/api/combos*` | Various | Combo management |
| `/api/keys*` | Various | API key management |
| `/api/pricing` | GET | Model pricing |
### Utilizare și analiză
### Usage & Analytics
| Punct final | Metoda | Descriere |
| --------------------------- | ------ | ---------------------------- |
| `/api/usage/history` | GET | Istoricul utilizării |
| `/api/usage/logs` | GET | Jurnalele de utilizare |
| `/api/usage/request-logs` | GET | Jurnalele la nivel de cerere |
| `/api/usage/[connectionId]` | GET | Utilizare per conexiune |
| Endpoint | Method | Description |
| --------------------------- | ------ | -------------------- |
| `/api/usage/history` | GET | Usage history |
| `/api/usage/logs` | GET | Usage logs |
| `/api/usage/request-logs` | GET | Request-level logs |
| `/api/usage/[connectionId]` | GET | Per-connection usage |
### Setări
### Settings
| Punct final | Metoda | Descriere |
| ------------------------------- | ------- | ------------------------------ |
| `/api/settings` | GET/PUT | Setări generale |
| `/api/settings/proxy` | GET/PUT | Configurare proxy de rețea |
| `/api/settings/proxy/test` | POST | Testați conexiunea proxy |
| `/api/settings/ip-filter` | GET/PUT | Lista IP permisă/lista blocată |
| `/api/settings/thinking-budget` | GET/PUT | Bugetul simbol de raționament |
| `/api/settings/system-prompt` | GET/PUT | Sistem global prompt |
| Endpoint | Method | Description |
| ------------------------------- | ------- | ---------------------- |
| `/api/settings` | GET/PUT | General settings |
| `/api/settings/proxy` | GET/PUT | Network proxy config |
| `/api/settings/proxy/test` | POST | Test proxy connection |
| `/api/settings/ip-filter` | GET/PUT | IP allowlist/blocklist |
| `/api/settings/thinking-budget` | GET/PUT | Reasoning token budget |
| `/api/settings/system-prompt` | GET/PUT | Global system prompt |
### Monitorizare
### Monitoring
| Punct final | Metoda | Descriere |
| ------------------------ | ---------- | -------------------------- |
| `/api/sessions` | GET | Urmărire activă a sesiunii |
| `/api/rate-limits` | GET | Limitele ratei per cont |
| `/api/monitoring/health` | GET | Verificarea sănătății |
| `/api/cache` | GET/DELETE | Cache stats / clear |
| Endpoint | Method | Description |
| ------------------------ | ---------- | ----------------------- |
| `/api/sessions` | GET | Active session tracking |
| `/api/rate-limits` | GET | Per-account rate limits |
| `/api/monitoring/health` | GET | Health check |
| `/api/cache` | GET/DELETE | Cache stats / clear |
### Backup & Export/Import
| Punct final | Metoda | Descriere |
| --------------------------- | ------ | -------------------------------------------------------- |
| `/api/db-backups` | GET | Listează copiile de rezervă disponibile |
| `/api/db-backups` | PUNE | Creați o copie de rezervă manuală |
| `/api/db-backups` | POST | Restaurare dintr-o anumită copie de rezervă |
| `/api/db-backups/export` | GET | Descărcați baza de date ca fișier .sqlite |
| `/api/db-backups/import` | POST | Încărcați fișierul .sqlite pentru a înlocui baza de date |
| `/api/db-backups/exportAll` | GET | Descărcați backup complet ca arhivă .tar.gz |
| Endpoint | Method | Description |
| --------------------------- | ------ | --------------------------------------- |
| `/api/db-backups` | GET | List available backups |
| `/api/db-backups` | PUT | Create a manual backup |
| `/api/db-backups` | POST | Restore from a specific backup |
| `/api/db-backups/export` | GET | Download database as .sqlite file |
| `/api/db-backups/import` | POST | Upload .sqlite file to replace database |
| `/api/db-backups/exportAll` | GET | Download full backup as .tar.gz archive |
### Cloud Sync
| Punct final | Metoda | Descriere |
| ---------------------- | ------- | ----------------------------------- |
| `/api/sync/cloud` | Diverse | Operațiuni de sincronizare în cloud |
| `/api/sync/initialize` | POST | Inițializați sincronizarea |
| `/api/cloud/*` | Diverse | Management cloud |
| Endpoint | Method | Description |
| ---------------------- | ------- | --------------------- |
| `/api/sync/cloud` | Various | Cloud sync operations |
| `/api/sync/initialize` | POST | Initialize sync |
| `/api/cloud/*` | Various | Cloud management |
### Instrumente CLI
### CLI Tools
| Punct final | Metoda | Descriere |
| ---------------------------------- | ------ | -------------------------- |
| `/api/cli-tools/claude-settings` | GET | Starea Claude CLI |
| `/api/cli-tools/codex-settings` | GET | Status CLI Codex |
| `/api/cli-tools/droid-settings` | GET | Stare CLI Droid |
| `/api/cli-tools/openclaw-settings` | GET | Stare CLI OpenClaw |
| `/api/cli-tools/runtime/[toolId]` | GET | Timp de rulare CLI generic |
| Endpoint | Method | Description |
| ---------------------------------- | ------ | ------------------- |
| `/api/cli-tools/claude-settings` | GET | Claude CLI status |
| `/api/cli-tools/codex-settings` | GET | Codex CLI status |
| `/api/cli-tools/droid-settings` | GET | Droid CLI status |
| `/api/cli-tools/openclaw-settings` | GET | OpenClaw CLI status |
| `/api/cli-tools/runtime/[toolId]` | GET | Generic CLI runtime |
Răspunsurile CLI includ: `installed`, `runnable`, `command`, `commandPath`, `runtimeMode`, `reason`.
CLI responses include: `installed`, `runnable`, `command`, `commandPath`, `runtimeMode`, `reason`.
### Reziliență și limite de rată
### ACP Agents
| Punct final | Metoda | Descriere |
| ----------------------- | ------- | ------------------------------------------- |
| `/api/resilience` | GET/PUT | Obține/actualizează profiluri de rezistență |
| `/api/resilience/reset` | POST | Resetați întrerupătoarele |
| `/api/rate-limits` | GET | Starea limitei ratei per cont |
| `/api/rate-limit` | GET | Configurație globală a limitei ratei |
| Endpoint | Method | Description |
| ----------------- | ------ | -------------------------------------------------------- |
| `/api/acp/agents` | GET | List all detected agents (built-in + custom) with status |
| `/api/acp/agents` | POST | Add custom agent or refresh detection cache |
| `/api/acp/agents` | DELETE | Remove a custom agent by `id` query param |
### Evaluări
GET response includes `agents[]` (id, name, binary, version, installed, protocol, isCustom) and `summary` (total, installed, notFound, builtIn, custom).
| Punct final | Metoda | Descriere |
| ------------ | -------- | ---------------------------------------------- |
| `/api/evals` | GET/POST | Lista suitelor de evaluare / evaluarea rulării |
### Resilience & Rate Limits
### Politici
| Endpoint | Method | Description |
| ----------------------- | ------- | ------------------------------- |
| `/api/resilience` | GET/PUT | Get/update resilience profiles |
| `/api/resilience/reset` | POST | Reset circuit breakers |
| `/api/rate-limits` | GET | Per-account rate limit status |
| `/api/rate-limit` | GET | Global rate limit configuration |
| Punct final | Metoda | Descriere |
| --------------- | --------------- | ------------------------------- |
| `/api/policies` | GET/POST/DELETE | Gestionați politicile de rutare |
### Evals
### Conformitate
| Endpoint | Method | Description |
| ------------ | -------- | --------------------------------- |
| `/api/evals` | GET/POST | List eval suites / run evaluation |
| Punct final | Metoda | Descriere |
| --------------------------- | ------ | ------------------------------------------- |
| `/api/compliance/audit-log` | GET | Jurnal de audit de conformitate (ultimul N) |
### Policies
### v1beta (compatibil cu Gemini)
| Endpoint | Method | Description |
| --------------- | --------------- | ----------------------- |
| `/api/policies` | GET/POST/DELETE | Manage routing policies |
| Punct final | Metoda | Descriere |
| -------------------------- | ------ | ------------------------------------ |
| `/v1beta/models` | GET | Listează modele în format Gemeni |
| `/v1beta/models/{...path}` | POST | Punct final Gemeni `generateContent` |
### Compliance
Aceste puncte finale reflectă formatul API al Gemini pentru clienții care se așteaptă la compatibilitate nativă cu SDK Gemini.
| Endpoint | Method | Description |
| --------------------------- | ------ | ----------------------------- |
| `/api/compliance/audit-log` | GET | Compliance audit log (last N) |
### API-uri interne/de sistem
### v1beta (Gemini-Compatible)
| Punct final | Metoda | Descriere |
| --------------- | ------ | ---------------------------------------------------------------- |
| `/api/init` | GET | Verificarea inițializării aplicației (utilizată la prima rulare) |
| `/api/tags` | GET | Etichete de model compatibile cu Ollama (pentru clienții Ollama) |
| `/api/restart` | POST | Declanșează repornirea grațioasă a serverului |
| `/api/shutdown` | POST | Declanșează închiderea grațioasă a serverului |
| Endpoint | Method | Description |
| -------------------------- | ------ | --------------------------------- |
| `/v1beta/models` | GET | List models in Gemini format |
| `/v1beta/models/{...path}` | POST | Gemini `generateContent` endpoint |
> **Notă:** Aceste puncte finale sunt utilizate intern de sistem sau pentru compatibilitatea clientului Ollama. De obicei, acestea nu sunt apelate de utilizatorii finali.
These endpoints mirror Gemini's API format for clients that expect native Gemini SDK compatibility.
### Internal / System APIs
| Endpoint | Method | Description |
| --------------- | ------ | ---------------------------------------------------- |
| `/api/init` | GET | Application initialization check (used on first run) |
| `/api/tags` | GET | Ollama-compatible model tags (for Ollama clients) |
| `/api/restart` | POST | Trigger graceful server restart |
| `/api/shutdown` | POST | Trigger graceful server shutdown |
> **Note:** These endpoints are used internally by the system or for Ollama client compatibility. They are not typically called by end users.
---
## Transcriere audio
## Audio Transcription
```bash
POST /v1/audio/transcriptions
@ -317,9 +327,9 @@ Authorization: Bearer your-api-key
Content-Type: multipart/form-data
```
Transcrie fișiere audio folosind Deepgram sau AssemblyAI.
Transcribe audio files using Deepgram or AssemblyAI.
**Solicitare:**
**Request:**
```bash
curl -X POST http://localhost:20128/v1/audio/transcriptions \
@ -328,7 +338,7 @@ curl -X POST http://localhost:20128/v1/audio/transcriptions \
-F "model=deepgram/nova-3"
```
**Răspuns:**
**Response:**
```json
{
@ -339,15 +349,15 @@ curl -X POST http://localhost:20128/v1/audio/transcriptions \
}
```
**Furnizori acceptați:** `deepgram/nova-3`, `assemblyai/best`.
**Supported providers:** `deepgram/nova-3`, `assemblyai/best`.
**Formate acceptate:** `mp3`, `wav`, `m4a`, `flac`, `ogg`,
**Supported formats:** `mp3`, `wav`, `m4a`, `flac`, `ogg`, `webm`.
---
## Compatibilitate Ollama
## Ollama Compatibility
Pentru clienții care folosesc formatul API al Ollama:
For clients that use Ollama's API format:
```bash
# Chat endpoint (Ollama format)
@ -357,18 +367,18 @@ POST /v1/api/chat
GET /api/tags
```
Cererile sunt traduse automat între Ollama și formatele interne.
Requests are automatically translated between Ollama and internal formats.
---
## Telemetrie
## Telemetry
```bash
# Get latency telemetry summary (p50/p95/p99 per provider)
GET /api/telemetry/summary
```
**Răspuns:**
**Response:**
```json
{
@ -381,7 +391,7 @@ GET /api/telemetry/summary
---
## Buget
## Budget
```bash
# Get budget status for all API keys
@ -400,7 +410,7 @@ Content-Type: application/json
---
## Disponibilitatea modelului
## Model Availability
```bash
# Get real-time model availability across all providers
@ -417,25 +427,25 @@ Content-Type: application/json
---
## Procesarea cererii
## Request Processing
1. Clientul trimite cererea către `/v1/*`
2. Apelurile de gestionare a rutei `handleChat`, `handleEmbedding`, `handleAudioTranscription` sau `handleImageGeneration`
3. Modelul este rezolvat (furnizor direct/model sau alias/combo)
4. Acreditări selectate din DB local cu filtrarea disponibilității contului
5. Pentru chat: `handleChatCore` — detectarea formatului, traducerea, verificarea memoriei cache, verificarea idempotității
6. Executorul furnizorului trimite cererea în amonte
7. Răspunsul tradus înapoi în formatul client (chat) sau returnat așa cum este (încorporare/imagini/audio)
8. Utilizare/înregistrare înregistrată
9. Fallback se aplică erorilor conform regulilor combinate
1. Client sends request to `/v1/*`
2. Route handler calls `handleChat`, `handleEmbedding`, `handleAudioTranscription`, or `handleImageGeneration`
3. Model is resolved (direct provider/model or alias/combo)
4. Credentials selected from local DB with account availability filtering
5. For chat: `handleChatCore` — format detection, translation, cache check, idempotency check
6. Provider executor sends upstream request
7. Response translated back to client format (chat) or returned as-is (embeddings/images/audio)
8. Usage/logging recorded
9. Fallback applies on errors according to combo rules
Referință completă a arhitecturii: [link](ARCHITECTURE.md)
Full architecture reference: [`ARCHITECTURE.md`](ARCHITECTURE.md)
---
## Autentificare
## Authentication
- Rutele tabloului de bord (`/dashboard/*`) folosesc `auth_token` cookie
- Conectarea folosește hash-ul parolei salvate; alternativă la `INITIAL_PASSWORD`
- `requireLogin` comutabil prin `/api/settings/require-login`
- Rutele `/v1/*` necesită opțional cheia API Bearer când `REQUIRE_API_KEY=true`
- Dashboard routes (`/dashboard/*`) use `auth_token` cookie
- Login uses saved password hash; fallback to `INITIAL_PASSWORD`
- `requireLogin` toggleable via `/api/settings/require-login`
- `/v1/*` routes optionally require Bearer API key when `REQUIRE_API_KEY=true`