# Depanare (/ro/docs/troubleshooting)

Rezolvă întâi erorile frecvente — 401 și 404 din cauza unei adrese sau chei greșite, cote și limite 429, capcane GitHub Copilot BYOK, probleme de autentificare în aplicații.

Aproape toate erorile au una din patru cauze: adresa de bază, cheia, o limită sau o setare a clientului. Verifică-le în această ordine.

## 401 Unauthorized [#401-unauthorized]

Gateway-ul nu a acceptat cheia.

- Cheile încep cu `codai_`. Orice altceva (o cheie OpenAI `sk-…`, un exemplu de tipul `ck-…`) este respins.
- Trimite-o ca `Authorization: Bearer codai_…` (formatul OpenAI și Responses) sau `x-api-key: codai_…` (formatul Anthropic).
- O cheie revocată sau expirată primește tot 401. Deschide [hub.codai.ro](https://hub.codai.ro) → **Chei API**, verifică dacă e activă sau creează una nouă.
- Atenție la caractere invizibile: o cheie lipită de pe tastatura telefonului poate primi un spațiu la final sau un caracter adăugat automat.

```bash
curl -sS https://ai.codai.ro/v1/models -H "Authorization: Bearer $CODAI_API_KEY"
```

Dacă primești o listă JSON de modele, cheia funcționează; orice alt răspuns îți spune ce trebuie corectat.

## 404 Not Found [#404-not-found]

Adresa e greșită, nu cheia.

| Tip de client | Adresa de bază |
| --- | --- |
| SDK-uri OpenAI, Responses, majoritatea extensiilor de IDE | `https://ai.codai.ro/v1` |
| SDK-uri Anthropic și clienți de tip Anthropic | `https://ai.codai.ro` (fără `/v1`, îl adaugă SDK-ul) |
| SDK-urile codai | nu trebuie setată, valoarea implicită e corectă |

- Gazda este `ai.codai.ro`. Alte gazde (`api.codai.ro`, `codai.ro`) nu servesc API-ul de inferență.
- O cale dublată (`/v1/v1/chat/completions`) dă 404: clientul adaugă deja `/v1`.
- Numele modelului este `codai`. Vezi [modele](./gateway/models.mdx) pentru numele pe care le poate trimite un client.

## 429 Too Many Requests [#429-too-many-requests]

Citește `error.code` din corpul răspunsului și antetul `Retry-After`.

| Cod | Ce înseamnă | Ce faci |
| --- | --- | --- |
| `rate_limit_exceeded` | O fereastră de cereri sau tokenuri e plină, ori s-a atins un plafon zilnic sau lunar de cheltuieli | Aștepți secundele din `Retry-After`; mărești bugetul cheii din hub dacă e plafonul tău |
| `quota_exceeded` | Ai consumat sarcinile incluse în plan | Aștepți resetarea indicată în `Retry-After`, cumperi credite sau schimbi planul |

[SDK-urile](./sdks/index.mdx) reîncearcă automat la 429, cu pauze crescătoare. Limitele fiecărui plan sunt în [limite și prețuri](./gateway/limits-pricing.mdx).

## GitHub Copilot (BYOK) [#github-copilot-byok]

- **CLI-ul afișează „Authentication failed (HTTP 401)” cu tipul `anthropic`.** Adresa de bază se termină în `/v1`, iar răspunsul real este 404. Folosește adresa rădăcină `https://ai.codai.ro`.
- **Modelul lipsește din listă.** Repornește VS Code și verifică dacă politica Copilot a organizației permite chei proprii.
- **Modul agent este inactiv.** Setează `toolCalling` la `true` pe intrarea modelului.
- **Completările inline și embeddings merg tot la GitHub.** E normal: Copilot trimite către un model BYOK doar traficul de chat și agent.

Configurarea completă este în [GitHub Copilot](./integrations/github-copilot.mdx).

## Autentificarea în aplicații [#autentificarea-în-aplicații]

- **Desktopul, VS Code și CLI-ul codaid** se autentifică printr-un cod de dispozitiv: se deschide o pagină în browser cu codul deja completat. Dacă nu se deschide, intră pe `auth.codai.ro/device` și tastează codul afișat în aplicație.
- **Codul a expirat.** Codurile sunt valabile puțin timp; pornește din nou autentificarea.
- **Ești autentificat pe web, dar aplicația tot cere.** Fiecare aplicație primește propria cheie și apare ca dispozitiv în hub, la **Securitate → Dispozitive**. Dacă revoci dispozitivul, aplicația este deconectată.
- **Desktopul pe Linux nu poate salva cheia.** Aplicația ține cheia în depozitul de secrete al sistemului; instalează și deblochează unul (GNOME Keyring sau KWallet), apoi autentifică-te din nou.

## Tot nu merge [#tot-nu-merge]

Vezi [suport](./support.mdx) pentru cum ne contactezi și ce să incluzi în mesaj.
