Developer guide
Kode kesalahan
Penanganan dan aturan percobaan ulang berdasarkan kode status
Halaman ini merangkum kode status yang dikembalikan gateway, artinya, dan penanganan untuk setiap kode.
Jika upstream mengembalikan 4xx·5xx, kode tersebut diteruskan apa adanya. Untuk kasus lainnya, ikuti tabel di bawah.
Kami juga mencantumkan format isi kesalahan untuk dua spesifikasi kompatibilitas, aturan Anthropic yang kompatibel dengan error.type, serta layar konsol untuk memeriksa batas dan penggunaan.
Kode status
| Kode | Arti | Penanganan |
|---|---|---|
| 400 | Kesalahan nilai permintaan. limit pada daftar model yang kompatibel dengan Anthropic berada di luar rentang 1~1000, atau Anda mencoba melanjutkan respons tersimpan dengan GET /responses/{responseId}?stream=true | Perbaiki nilai agar berada dalam rentang yang ditentukan. Ambil respons tersimpan tanpa stream. |
| 401 | Kunci tidak ada atau telah kedaluwarsa·dicabut | Periksa status kunci di layar kunci API, lalu periksa nama header dan prefiks Bearer. |
| 403 | Tidak memiliki izin untuk mengakses model, batas penggunaan terlampaui, kredit tidak mencukupi, atau bukan pemilik voice | error.message membedakan alasannya. Lihat nilainya pada layar di bagian pemeriksaan batas dan penggunaan di bawah. |
| 404 | Model tidak ada atau tidak dapat diakses dengan kunci ini (termasuk model yang dukungannya telah berakhir), jalur tidak ada, atau hasil CleviDrive yang masa penyimpanannya telah melewati 3 hari | Periksa terlebih dahulu daftar model yang dapat dipanggil dengan GET /models. Bandingkan jalurnya dengan tabel di halaman Memanggil API. |
| 408 · 409 · 413 | Waktu tunggu upstream habis, kemacetan, atau ukuran permintaan terlampaui. Untuk jalur suara·voice, batas waktu adalah 5 menit dan batas permintaan adalah 28 MiB | Jika 409 memiliki Retry-After, tunggu selama waktu tersebut. Untuk 413, bagi permintaan menjadi beberapa bagian. |
| 429 | Penyedia upstream menerapkan pembatasan laju | Jika ada Retry-After, ikuti apa adanya. Jika tidak ada, lakukan percobaan ulang dengan exponential backoff. |
| 5xx | Kesalahan sementara pada gateway atau upstream (termasuk 503) | Lakukan percobaan ulang dengan exponential backoff. Jika terus terjadi, beri tahu kami melalui Bantuan dan Hubungi Kami, dengan menyertakan X-Request-Id. |
Percobaan ulang
Gateway tidak membuat 429 sendiri, tidak diam-diam mencoba ulang respons upstream, dan tidak memasukkannya ke dalam antrean.
Klien yang menangani penantian dan percobaan ulang.
| Kode | Waktu tunggu | Kemudian |
|---|---|---|
| 409 | Jika ada Retry-After, tunggu selama waktu tersebut | Kirim ulang permintaan yang sama. |
| 429 | Jika ada Retry-After, tunggu selama waktu tersebut; jika tidak ada, gunakan exponential backoff | Kirim ulang permintaan yang sama. |
| 5xx | Exponential backoff | Jika berulang, hubungi kami. |
| 413 | Tanpa menunggu | Bagi permintaan menjadi beberapa bagian. |
Isi error
Bentuk isi error berbeda-beda menurut spesifikasinya. Untuk error upstream, kami hanya menyisakan pesan, merapikannya, lalu meneruskannya; stack dan field internal tidak diteruskan.
Ini adalah isi respons dari jalur yang kompatibel dengan OpenAI.
{
"error": {
"message": "API key is required.",
"type": "invalid_request_error"
}
}Ini adalah isi respons dari jalur yang kompatibel dengan Anthropic. error.type ditentukan berdasarkan kode status.
{
"type": "error",
"error": {
"type": "authentication_error",
"message": "..."
},
"request_id": "rqid..."
}| Kode status | error.type |
|---|---|
| 400 | invalid_request_error |
| 401 | authentication_error |
| 403 | permission_error |
| 404 | not_found_error |
| 413 | request_too_large |
| 429 | rate_limit_error |
| 529 | overloaded_error |
| Kode lainnya | api_error |
Memeriksa batas dan penggunaan
Nilai batas berbeda-beda untuk setiap workspace. Periksa alasan 403 melalui error.message, lalu lihat nilainya di layar berikut.
| Yang perlu diperiksa | Layar konsol |
|---|---|
| Batas yang berlaku untuk workspace saya | Batas penggunaan yang dialokasikan di Ikhtisar |
| Rentang yang diizinkan oleh paket dan saldo | Paket dan kredit |
| Penggunaan aktual (jumlah panggilan berdasarkan model dan kunci, perkiraan kredit yang dipotong) | Penggunaan |
| Status kunci (apakah kedaluwarsa atau dicabut) | Kunci API |
