Perbedaan pertama dan utama di antara mereka adalah bahwa dengan sebagian besar API ada permintaan diikuti oleh tanggapan. Tidak ada permintaan yang diperlukan untuk webhook, itu hanya mengirim data saat itu tersedia.
API adalah antarmuka ke data Anda di example.com. API digunakan dari server Anda ke platform example.com dan dapat digunakan untuk Daftar, Buat, Edit atau Hapus item.
Webhook adalah panggilan otomatis dari example.com ke server Anda yang dipicu saat peristiwa tertentu terjadi di example.com. Misalnya, ketika tugas selesai dan Anda ingin mengetahuinya secara real time, kami akan membuat permintaan POST ke URL yang telah Anda daftarkan untuk EVENT.COMPLETED webhook di akun contoh Anda.
Jadi, singkatnya: API adalah tempat Anda memberi tahu hal-hal example.com dan Webhooks adalah tempat example.com memberi tahu Anda hal-hal.
SaaS adalah konsep - ide Perangkat Lunak yang ada di cloud dan klien umumnya adalah browser. Aplikasi SaaS ditentukan oleh fungsi yang dapat diberikannya kepada pengguna (misalnya Salesforce menyediakan database yang dapat digunakan untuk menyimpan informasi pelanggan) fungsi yang tersedia ditentukan oleh tujuan aplikasi (yaitu: CRM, Email Blaster, CMS , dll.).
API adalah cara agar aplikasi SaaS terhubung dengan aplikasi lain melalui metode komunikasi umum (REST, SOAP, JSON, dll.). API tidak dapat berbicara langsung ke API lain. API dapat digunakan oleh aplikasi berkode atau middleware yang bertindak sebagai jembatan antara dua API dan menjalankan utas eksekusi. Misalnya - baik NetSuite dan Salesforce memiliki SOAP API, tetapi bagi mereka untuk berkomunikasi - Anda ingin menggunakan perangkat lunak middleware yang dapat berinteraksi dengan kedua sistem dan dikonfigurasikan untuk menarik catatan kontak baru melalui API Salesforce dan mendorong catatan baru ke NetSuite melalui itu API setiap jam.
Webhooks adalah protokol komunikasi lain untuk aplikasi SaaS yang memungkinkan komunikasi antar aplikasi, tetapi hanya menggunakan HTTP POSTS untuk mengontrol utas eksekusi. Webhooks memungkinkan aplikasi untuk berbicara langsung satu sama lain, tanpa menggunakan middleware. Misalnya - ketika Anda mengirimkan formulir ke WuFoo, itu bisa diatur untuk memulai HTTP POST webhook ke layanan lain dan melewati beberapa nilai bidang dari pengiriman formulir. Webhooks juga dapat digunakan bersama dengan API - misalnya setelah webhook memberi tahu aplikasi lain sesuatu yang terjadi untuk merekam id X, aplikasi itu dapat menggunakan API untuk berkomunikasi dengan layanan untuk memeriksa nilai-nilai bidang baru atau mengubah status rekor.
Sulit untuk memiliki API atau webhooks tanpa memiliki aplikasi SaaS. Namun, Anda dapat dengan mudah memiliki aplikasi SaaS yang tidak menggunakan webhooks atau API (publik). Demikian pula, tergantung pada fungsi aplikasi SaaS Anda, Anda dapat memilih untuk menggunakan webhooks ATAU API.