Kesalahan & Idempotensi
Respons masalah, percobaan ulang, batas laju, dan pencegahan duplikasi.
Kesalahan menggunakan application/problem+json dengan status HTTP yang sebenarnya dan request_id.
Permintaan pembuatan mewajibkan Idempotency-Key sepanjang 8–128 karakter berupa huruf, angka, ., _, :, atau -. API hanya menyimpan HMAC Key beserta fingerprint permintaan.
- Key dan body yang sama mengembalikan tugas awal.
- Key yang sama dengan body berbeda mengembalikan
409 idempotency_conflict. - Permintaan awal yang masih berjalan mengembalikan
409 request_in_progressdenganRetry-After. - Jangan pernah membuat Key baru di dalam percobaan ulang otomatis.
Kode umum meliputi invalid_api_key, invalid_api_key_rate_limited, api_key_expired, insufficient_scope, validation_error, unsupported_model, unsupported_parameter, input_url_not_allowed, insufficient_credits, payment_required, account_suspended, network_not_allowed, rate_limit_exceeded, concurrency_limit_exceeded, provider_unavailable, dan service_unavailable.
Kredensial tidak valid yang berulang dari IP klien yang sama akan dibatasi. Layanan hanya menyimpan fingerprint IP yang diberi pepper dan mengembalikan invalid_api_key_rate_limited dengan Retry-After setelah batas tercapai.
Coba ulang kegagalan jaringan, 429, dan 503 dengan backoff, body yang sama, dan idempotency key yang sama. Jika hasil Provider tidak dapat dikonfirmasi, API sengaja menolak pengiriman ulang tanpa kepastian dan dapat mempertahankan kunci konkurensi hingga kedaluwarsa atau tugas direkonsiliasi.