Envelope error, daftar lengkap jawaban, dan apa yang harus dilakukan untuk masing-masing.
Envelope
{ "message": "MISSING_CLIENT_ID", "details": [] }
message mengidentifikasi error, dan details biasanya kosong. Ketika sebuah flow menolak permintaan, misalnya karena gambar tidak valid, jawabannya tetap memakai envelope ini dengan alasan di message dan details. Lihat Penolakan.
Referensi
| Status | message | Endpoint | Coba ulang? |
|---|---|---|---|
| 400 | INVALID_REQUEST | create | Tidak. Perbaiki permintaan |
| 400 | REQUEST_TOO_LARGE | create | Tidak. Body lebih dari 2 MiB |
| 400 | MISSING_<FIELD> / INVALID_<FIELD> | create | Tidak. <FIELD> adalah nama field dalam upper snake case, misalnya MISSING_CREDENTIAL_VALUE |
| 401 | Kosong ("") | create, selfie | Tidak. Unico menolak access key. Periksa HUMAN_API_ACCESS_KEY |
| 409 | CORRELATION_ID_ALREADY_USED | create | Tidak. Proses lain sudah memiliki correlationId tersebut. Gunakan yang baru |
| 422 | ATTRIBUTE_TYPE_NOT_SUPPORTED | create | Tidak. Gunakan kode dari katalog |
| 4xx | message dari flow | create | Tidak. Proses disimpan sebagai gagal |
| 404 | PROCESS_NOT_FOUND | get, selfie | Tidak |
| 404 | SELFIE_NOT_FOUND | selfie | Tidak. Proses tidak memiliki selfie yang tersedia |
| 4xx | message penolakan | selfie | Tidak |
| 503 | DATABASE_UNAVAILABLE | semua | Create: lihat di bawah. Get dan selfie: ya |
| 502 | UPSTREAM_UNAVAILABLE | semua | Create: lihat di bawah. Get dan selfie: ya |
| 500 | INTERNAL | semua | Create: lihat di bawah |
Mencoba ulang pembuatan proses
Setiap pembuatan yang diterima memulai proses baru dengan id baru, dan setiap correlationId hanya dapat digunakan sekali: correlationId yang sudah digunakan, oleh proses dalam status apa pun, ditolak dengan 409 CORRELATION_ID_ALREADY_USED.
- 400, 409, 422, dan penolakan lainnya: perbaiki permintaan sebelum mengirimnya lagi.
- 503
DATABASE_UNAVAILABLE: tidak ada yang disimpan atau diproses. Coba ulang dengancorrelationIdyang sama. - 502 dan 500: permintaan tidak terkonfirmasi. Jangan coba ulang secara otomatis. Untuk mencoba lagi, kirim pembuatan baru dengan
correlationIdbaru.
Pendekatan yang direkomendasikan untuk back-end Anda:
- Catat setiap percobaan sebelum memanggil Human Plugin, dengan
correlationIdsebagai kuncinya. - Pada
502atau500, tentukan berdasarkan aturan bisnis Anda apakah akan memulai percobaan baru. - Pertahankan keterkaitan antara percobaan yang berhubungan dalam catatan Anda.
Mencoba ulang pembacaan
GET, untuk proses maupun selfie-nya, aman dicoba ulang. Gunakan backoff, dan berhenti pada 404.
Rate limit
Human Plugin tidak memiliki rate limiter bawaan. Terapkan batas di gateway Anda jika diperlukan.