Source: https://aiprimetech.io/it/docs/api-reference/errors/ [Home](/it/) / [Documentazione](/it/docs/) / Errori # Errori Tutti i codici di stato restituiti dal gateway, le loro cause effettive e come risolverle. Copia pagina [ Visualizza in Markdown](/it/docs/api-reference/errors.md) [ Chiedi a ChatGPT](https://chatgpt.com/?q=Read%20https%3A//aiprimetech.io/docs/api-reference/errors.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) [ Chiedi in Claude](https://claude.ai/new?q=Read%20https%3A//aiprimetech.io/docs/api-reference/errors.md%20and%20answer%20questions%20about%20it.%20Start%20with%20a%20short%20summary.) Gli errori restituiscono JSON con un type e un messaggio leggibile message. I codici di stato seguono le convenzioni di Anthropic e OpenAI. ``` Copy{"type": "error", "error": {"type": "authentication_error", "message": "invalid api key"}} ``` ## Codici di stato | Codice | Significato | Causa effettiva più comune | Soluzione | 400 | Richiesta non valida | Manca max_tokens in Messages, oppure un elemento non valido: messages array | Verifica il corpo rispetto a [Messages](/it/docs/api-reference/messages/) | 401 | Non autenticato | Chiave inviata nell'header errato per il formato | x-api-key per Messages, Bearer per Chat Completions | 402 | Pagamento richiesto | Saldo esaurito o piano scaduto | [Ricarica](/it/topup/) o [acquista un piano](/it/plans/) | 403 | Accesso negato | Chiave revocata o modello non abilitato per l'account | Crea una nuova chiave; controlla /v1/models | 404 | Non trovato | Errore nell'URL di base: in genere un elemento duplicato o mancante: /v1 | Vedi [URL di base](/it/docs/getting-started/base-urls/) | 429 | Limite di richieste raggiunto | Troppe richieste simultanee | Riprova con attese crescenti in modo esponenziale; vedi [Limiti di frequenza](/it/docs/api-reference/rate-limits/) | 500 | Errore del gateway | Errore interno imprevisto | Riprova una volta; se il problema persiste, contatta l'assistenza indicando l'ID della richiesta | 529 | Servizio a monte sovraccarico | Capacità del provider, non del tuo account | Riprova con attese crescenti: in genere il problema si risolve in pochi secondi ## Tipi di errore | tipo | Significato | invalid_request_error | Il corpo non è valido o manca un campo obbligatorio | authentication_error | Chiave mancante, non valida o revocata | permission_error | La chiave è valida ma non è autorizzata a usare quel modello | not_found_error | Percorso sconosciuto o ID del modello sconosciuto | rate_limit_error | Richieste limitate | api_error | Errore interno | overloaded_error | Capacità del servizio a monte esaurita ## Come riprovare correttamente Nuovo tentativo 429, 500, 502, 503 e 529. Non riprovare mai alla cieca 400, 401, 402 o 403 : la stessa richiesta fallisce nello stesso modo e, per le risposte generate parzialmente, potresti pagare due volte. ``` Copyimport time, httpx def call(body, key, tries=4): for i in range(tries): r = httpx.post(class="s">"https://aiprimetech.io/v1/messages", json=body, timeout=120, headers={class="s">"x-api-key": key, class="s">"anthropic-version": class="s">"2023-06-01"}) if r.status_code in (429, 500, 502, 503, 529): time.sleep(2 ** i) class=class="s">"c"># 1s, 2s, 4s, 8s continue r.raise_for_status() return r.json() raise RuntimeError(class="s">"upstream unavailable after retries") ``` In produzione, aggiungi una variazione casuale al tempo di attesa. I tentativi sincronizzati di molti worker trasformano un breve disservizio in un'ondata di richieste verso lo stesso servizio a monte. [Limiti di frequenzaConcorrenza e throughput](/it/docs/api-reference/rate-limits/)[Risoluzione dei problemiIndice per sintomo](/it/docs/guides/troubleshooting/) [PrecedenteStreaming](/it/docs/api-reference/streaming/)[AvantiLimiti di frequenza](/it/docs/api-reference/rate-limits/)