Skip to main content

Format Respon Kesalahan

Chat Completions, Responses, Messages, dan Gemini adalah batas protokol publik, bukan API Web. Error protokol native tidak dibungkus dengan envelope Web { success, data, error }. Contoh berikut berlaku untuk error gateway kompatibel OpenAI pada Chat dan Responses:
Pada error gateway kompatibel OpenAI, message dan type tersedia; code, param, dan ekstensi petunjuk bersifat opsional. Messages dan Gemini memakai keluarga error native masing-masing. Error validasi upstream dipertahankan jika aman untuk dikembalikan; 400/422 deterministik tidak mengganti channel dan tidak ada retry setelah byte pertama dikirim.

Kode Status HTTP

Jenis Kesalahan

Kesalahan Otentikasi (401)

Kesalahan Pembayaran (402)

Kesalahan Akses (403)

Kesalahan Validasi (400)

Rute publik tidak membedakan keadaan model yang salah ketik, tersembunyi, ditunda, atau tidak publik dalam badan respons. Jika sebuah model saat ini tidak tersedia melalui detail model, TokenLab mengembalikan model_not_found.

Kesalahan Batas Laju (429)

Ketika Anda melewati batas laju:
Header yang disertakan:
Header Retry-After dan field retry_after keduanya menunjukkan jumlah detik yang tepat untuk menunggu sebelum mencoba lagi.

Payload Terlalu Besar (413)

Ketika ukuran input atau file melebihi batas:
Penyebab umum:
  • File gambar terlalu besar (max 20MB)
  • File audio terlalu besar (max 25MB)
  • Teks input melebihi panjang konteks model

Kesalahan Upstream (502, 503)

Ketika semua kanal gagal, respons menyertakan model alternatif:

Menangani Kesalahan di Python

Menangani Kesalahan di JavaScript

Praktik Terbaik

Saat dibatasi oleh laju, tunggu semakin lama antara percobaan ulang:
Selalu tetapkan batas waktu yang wajar untuk menghindari permintaan yang menggantung:
Catat respons kesalahan lengkap termasuk ID permintaan untuk dukungan:
Beberapa model memiliki persyaratan khusus (mis. max tokens, format gambar). Validasi input sebelum membuat permintaan.