Webhook adalah endpoint HTTP yang digunakan untuk menerima notifikasi peristiwa. Ketika peristiwa tertentu terjadi, sistem secara aktif mengirim permintaan HTTP ke URL yang telah ditentukan sebelumnya (URL Webhook). Webhook umum digunakan untuk memberi tahu sistem eksternal tentang perubahan status atau hasil tugas asinkron.Kasus Penggunaan Umum#
| Kasus Penggunaan | Deskripsi |
|---|
| Notifikasi Pembayaran | Platform pembayaran mengirim notifikasi ketika pesanan berhasil dibayar |
| Pembaruan Autentikasi | Layanan login pihak ketiga memperbarui status login |
| Hasil Tugas Asinkron | Tugas latar belakang mengirim hasil setelah selesai |
| Pemicu Peristiwa | Sistem memberi tahu layanan eksternal ketika peristiwa tertentu terjadi |
Perbedaan Utama dari Endpoint Reguler#
Meskipun secara teknis Webhook hanyalah endpoint HTTP, Webhook berbeda dalam cara penggunaannya:Webhook: Sistem memulai panggilan ke URL eksternal
Endpoint Reguler: Klien mengirim permintaan ke sistem
Membuat Endpoint Webhook#
1
Di proyek Apidog Anda, klik ikon
"+" di sidebar kiri dan pilih
"New Other Protocol APIs" →
"Webhook".
2
Setelah membuat Webhook, isi bidang berikut di editor:
| Bidang | Deskripsi |
|---|
| Metode Permintaan | Biasanya POST |
| Nama Webhook | Muncul dalam dokumentasi API dan ekspor OpenAPI (misalnya, order) |
| URL Debug | Opsional. URL aktual yang digunakan untuk mengirim permintaan pengujian (hanya untuk pengujian, tidak disertakan dalam dokumentasi) |
| Info Lainnya | Body permintaan, header, dan konfigurasi lainnya |
3
Klik "Save" setelah Anda menyelesaikan semua bidang yang wajib diisi.
Men-debug Endpoint Webhook#
Debugging Webhook mensimulasikan pemicu peristiwa untuk memverifikasi apakah layanan eksternal menerima permintaan dengan benar.1.
Masukkan URL Webhook Anda ke bidang URL Debug
2.
Klik "Send" untuk mensimulasikan panggilan Webhook
Dokumentasi Webhook#
Dokumentasi Webhook mencakup detail seperti nama Webhook, metode permintaan, dan body permintaan. Hal ini memudahkan pengguna untuk memahami jenis data apa yang akan dikirim ketika peristiwa tertentu terjadi.URL Debug tidak akan disertakan dalam dokumentasi atau ekspor OpenAPI — ini hanya untuk pengujian internal.
Dalam file OpenAPI yang diekspor, endpoint Webhook dicantumkan di bawah bidang webhooks, yang berbeda dari bidang paths pada endpoint reguler.FAQ#
Menurut spesifikasi OpenAPI 3.1:
Endpoint reguler didefinisikan di bawah bidang paths
Endpoint Webhook didefinisikan di bawah bidang webhooks
Pemisahan yang jelas ini memastikan:Endpoint reguler dipanggil oleh klien eksternal untuk melakukan tindakan atau mengambil data
Webhook dipicu oleh sistem untuk memberi tahu layanan eksternal
Di Apidog, Webhook diperlakukan sebagai jenis endpoint yang berbeda untuk mencerminkan perbedaan arah ini secara akurat dan memastikan pemformatan yang tepat dalam ekspor OpenAPI./orders adalah endpoint reguler yang digunakan oleh klien
orderPaid adalah Webhook yang dipicu oleh sistem ketika pesanan berhasil dibayar