+62 896 6423 0232 | info@idmetafora.com
Software ERP Indonesia IDMETAFORA


Webhook | Pengertian, Cara Kerja, serta Bedanya dengan API

15 November, 2022   |   Ningsih

Webhook | Pengertian, Cara Kerja, serta Bedanya dengan API

Komunikasi antar aplikasi yang berjalan baik sesuatu yang penting, dan webhook merupakan salah satu sarana untuk mewujudkannya. Baik itu untuk mengembangkan proyek atau untuk meningkatkan produktivitas pada bisnis.
Dengannya, proses komunikasi antar sistem bisa berjalan dengan lebih efisien. Apa yang dimaksud webhook? Itulah yang akan Anda pelajari pada artikel ini. Disini akan dijelaskan mengenai pengertian dan cara kerjanya serta perbedaannya dengan application programming interface (API). 


Apa Itu Webhook dan Cara Kerjanya

Webhook merupakan salah satu sarana berkomunikasi antar aplikasi atau sistem dengan lebih efektif.
Komunikasi yang terjadi ketika menggunakan sarana tersebut berbasis event. Artinya, transfer informasi baru terjadi pada saat adanya input atau tindakan, yang kemudian bisa memicu tindakan lain. Contohnya adalah otomatisasi email dengan aplikasi email marketing. 

Sebelumnya, ketika ada pengunjung membuat akun pada website dan mengisikan data diri, informasi tersebut akan disimpan pada database Anda. Kemudian, Anda akan menggunakan informasi yang sudah diberikan untuk mengirimkan email sambutan pada pengunjung tersebut.

Dengan webhook, Anda dapat meminta aplikasi email marketing guna mengirimkan email sambutan setiap kali pengunjung selesai mengisikan data diri untuk akun baru. Cukup praktis, bukan? Bagaimana rangkaian proses pada contoh itu bisa terjadi? 

Secara teknis, webhook merupakan sebuah panggilan balik atau callback HTTP. Callback HTTP adalah metode HTTP guna mengirimkan data. Umumnya, data yang dikirimkan menggunakan format JSON atau XML.
Untuk memastikan transfer data berjalan baik, harus ditentukan terlebih dahulu  URL http:// atau https:// yang menjadi sarana komunikasi antara sistem A dan sistem B saat melakukan set up webhook.

Singkatnya, sistem komunikasi antara keduanya dibuat secara otomatis. Dengan begitu, proses seperti pada contoh pengiriman email tidak harus dilakukan secara manual lagi. Lalu bagaimana cara menggunakan callback HTTP tersebut? Mari simak di bagian selanjutnya.


Webhook vs API

Webhook selalu disandingkan dengan application programming interface (API) sebab fungsinya mirip. Kemudian, apa sih perbedaannya?

Otomatisasi

Perbedaan utama webhook dan API adalah pada cara kerjanya. Pengiriman data dengan webhook bisa dilakukan dengan otomatis. Dalam kehidupan sehari-hari, cara kerja panggilan balik HTTP tersebut dapat disamakan dengan berlangganan majalah. Cukup sekali permintaan berlangganan, maka saat setiap kali ada edisi terbaru, penerbit majalah otomatis mengirimkannya kepada Anda.

Cara kerja API sedikit berbeda. Pengiriman data pada sebuah komunikasi dilakukan berdasarkan permintaan. 
Menggunakan contoh majalah, pada cara kerja API sama seperti membeli majalah di kios. Anda perlu datang ke kios dan bertanya apakah edisi terbaru sudah keluar, sebelum dapat membelinya.
 
Performa

Perbedaan cara kerja diatas berdampak pada performa yang dihasilkan. Webhook memerlukan lebih sedikit resource server sebab transfer data terjadi secara otomatis. Dengan begitu, aplikasi yang memanfaatkan callback HTTP itu akan cenderung memiliki performa yang lebih baik. Sementara jika menggunakan API, performanya akan kurang optimal sebab setiap permintaan data harus dilakukan secara manual. Resource yang diperlukan pun tentu akan lebih banyak.

Keamanan

API akan memberikan keamanan yang lebih baik dibanding webhook. Kenapa begitu?
Dengan menggunakan API, aplikasi hanya akan menerima informasi yang diminta. Artinya, jenis serta jumlah data yang masuk bisa dikontrol. Webhook tidak mempunyai kendali atas jumlah dan interval data sebab setiap prosesnya berjalan otomatis seperti request di awal. Jadi, rentan dalam membuat server aplikasi penerima mengalami overload.

Kompatibilitas

Belum seluruh aplikasi mendukung webhook. Berbeda dengan API yang telah banyak didukung oleh berbagai aplikasi sebab secara keamanan dianggap lebih baik. Jadi, pada komunikasi antar aplikasi menggunakan panggilan balik HTTP tersebut belum bisa dilakukan, gunakanlah API terlebih dahulu.


3 Cara Menggunakan Webhook

Berdasarkan tujuannya, terdapat tiga cara untuk memanfaatkan webhook, yakni:

1. Push

Penggunaan webhook yang sederhana merupakan sebuah aplikasi mengirimkan informasi pada aplikasi lain secara searah, tanpa adanya tindakan lebih lanjut. Jadi, setelah dua aplikasi terhubung, aplikasi A nantinya akan mengirim informasi ke aplikasi B sesuai permintaan yang telah ditentukan sebelumnya. Contoh penerapan metode push adalah sebuah notifikasi aplikasi pada smartphone. Ketika teman Anda mengupdate status, ada informasi yang dikirimkan oleh server ke smartphone Anda sebagai pemberitahuan. 

2. Pipe

Dalam metode pipe, jika informasi telah dikirim ke penerima, penerima dapat melakukan tindakan lebih lanjut sesuai dengan informasi awal tersebut. Contohnya adalah dalam email tentang abandoned cart yang dikirimkan oleh website marketplace. Saat Anda memasukkan produk ke keranjang, namun tidak melakukan checkout, marketplace menggunakan informasi ini guna memberikan notifikasi ke Anda tentang pembelian yang belum diselesaikan.
Selain sekadar informasi, email yang dikirimkan akan mengarahkan penerima email agar lebih mudah untuk mengakses halaman pembelian yang telah ditinggalkan sebelumnya. Jadi, transaksi akan lebih efektif dilakukan.

3. Plugin

Sesuai dengan namanya, komunikasi data dengan webhook pun bisa memanfaatkan plugin. Dengan begitu, saat transfer informasi bisa dilakukan dua arah sesuai dengan hak akses yang diatur pada pengaturan di plugin.
 

Cara Mengkonfigurasikan Webhook

Setiap aplikasi mempunyai cara konfigurasi webhook yang berbeda. Tapi, secara garis besar, terdapat tiga langkah yang harus dilakukan:

1. Dapatkan URL webhook dari aplikasi penerima data.

2. Akses pengaturan webhook di aplikasi pemberi data serta masukkan URL tadi.

3. Tentukan parameter yang akan Anda gunakan untuk memicu pengiriman data.

Sebagai contoh, di bawah ini merupakan sebuah langkah-langkah untuk mengkonfigurasikan callback HTTP tersebut pada GitHub untuk integrasi dengan aplikasi lain:

Pertama, akses repositori pada GitHub dan klik tab Settings.
Kedua, klik menu Webhooks > Add Webhook.
Ketiga, masukkan informasi berikut pada masing-masing kolom di halaman Add Webhook:

    - Payload URL: Isi kolom ini dengan URL webhook yang diberikan aplikasi.
    - Content type: Pilih application/json.
    - Secret: Kosongkan kolom ini.
    - SSL verivication: pilih Enable.
    - Which events would you like to trigger this webhook?: Pilih Let me select individual events.

Kemudian, tentukan event-event yang menimbulkan sebuah pemicu pada transfer data. Misalnya, centang checkbox Issue commentPull request, serta Pull request review. Biarkan tanda centang pada checkbox Active dan klik Add webhook guna mengintegrasikan aplikasi tersebut dengan GitHub.
 

Siap Untuk Menggunakan Webhook?

Webhook memungkinkan suatu aplikasi guna mengirimkan data pada aplikasi lainnya dengan lebih mudah. Anda cukup menentukan kapan komunikasi yang nantinya akan dilakukan menggunakan sebuah pemicu (trigger).

Untuk menggunakan webhook terdapat langkah konfigurasi yang harus Anda lakukan sesuai aplikasi yang dituju. Biasanya dapat dilakukan dengan tiga langkah berikut:

1. Dapatkan URL webhook dari aplikasi penerima data.

2. Akses pengaturan webhook pada aplikasi pemberi data dan masukkan URL tadi.

3. Tentukan event trigger.


Kesimpulan

Webhook memungkinkan suatu aplikasi supaya dapat mengirimkan data pada aplikasi lainnya dengan lebih mudah. Anda hanya perlu untuk menentukan kapan saat komunikasi bisa dilakukan menggunakan sebuah pemicu (trigger).

Liputan Software ERP IDMETAFORA Indonesia!

Jika anda merasa artikel ini bermanfaat, bagikan ke pengikut anda melalui tombol dibawah ini:



Software ERP Indonesia

Artikel rekomendasi untuk Anda