Baca seluruh respons
Untuk status yang gagal, simpan kode HTTP, header, isi kesalahan, dan ID permintaan setelah menghapus rahasia. Data tersebut membedakan permintaan tidak valid dari penolakan akses atau masalah sementara.
Jangan tampilkan respons mentah layanan sebagai satu-satunya pesan kepada pengguna: jelaskan tindakan sambil mempertahankan detail diagnostik untuk operator.
curl --include --request POST https://cicora.ai/api/v1/chat/completions \
--header "Authorization: Bearer $CICORA_API_KEY" \
--header 'Content-Type: application/json' \
--data '{"model":"openai/gpt-5.6-sol","messages":[]}'Klasifikasikan kegagalan
- 4xx biasanya mengharuskan perbaikan kunci, data input, atau akses.
- 429 mengharuskan Anda mematuhi jendela batas dan menghindari percobaan ulang yang agresif.
- Kegagalan 5xx dan jaringan memerlukan percobaan ulang terbatas dengan backoff eksponensial dan jitter.
Coba ulang dengan aman
Coba ulang hanya kegagalan sementara dan hanya jika operasinya idempoten dalam produk Anda. Untuk pembuatan, simpan ID permintaan klien guna mencegah penagihan ganda atau artefak duplikat.
Dalam streaming, bedakan kesalahan sebelum delta pertama dengan gangguan setelah sebagian output diterima: kondisi kedua tidak boleh diganti diam-diam dengan respons baru.