Lewati ke konten utama

Strategi Fallback

Jika terjadi ketidaktersediaan layanan webhook, disarankan untuk menerapkan mekanisme fallback guna memastikan aplikasi Anda masih dapat mengambil hasil proses dalam waktu respons yang diharapkan.

Cara kerjanya

Webhook adalah mekanisme pengiriman hasil utama. Namun, Anda harus memperlakukan sinyal-sinyal berikut sebagai pemicu tambahan untuk secara aktif mengambil hasil melalui GET /client/v1/process/{processId}:

SinyalKanalYang disediakannya
Callback onFinishSDK Web / WebMobileSinyal akhir perjalanan — tanpa hasil
Redirect callbackUriSemua kanal lainnyaPengalihan URL saja — tanpa hasil
peringatan

Baik onFinish maupun callbackUri tidak menyampaikan hasil proses secara langsung. Keduanya hanyalah sinyal akhir perjalanan. Backend Anda bertanggung jawab untuk mengkorelasikan id yang diterima (atau pengalihan) dengan processId yang sebelumnya disimpan, lalu memanggil GetProcess untuk mengambil hasil aktual.

Alur yang direkomendasikan

Setelah sinyal akhir perjalanan diterima, backend Anda harus memanggil GET /client/v1/process/{processId} dan memvalidasi hasilnya dalam urutan berikut:

  1. Konfirmasi state = PROCESS_STATE_FINISHED
  2. Evaluasi field result dan terapkan aturan bisnis Anda

Hal ini memastikan ketidaktersediaan webhook sementara tidak mengakibatkan hilangnya hasil proses.