उनके बीच पहला और मुख्य अंतर यह है कि अधिकांश एपीआई के साथ एक प्रतिक्रिया के बाद एक अनुरोध है। एक webhook के लिए कोई अनुरोध की आवश्यकता नहीं है, यह उपलब्ध होने पर केवल डेटा भेजता है।
API example.com पर आपके डेटा का एक इंटरफ़ेस है। API का उपयोग आपके सर्वर से example.com प्लेटफ़ॉर्म पर किया जाता है और इसका उपयोग आइटमों की सूची, निर्माण, संपादन या हटाने के लिए किया जा सकता है।
जब एक विशिष्ट घटना example.com में होती है, तो Webhooks आपके सर्वर से example.com से स्वचालित कॉल करता है। उदाहरण के लिए, जब कोई कार्य पूरा हो जाता है और आप वास्तविक समय में उसके बारे में जानना चाहते हैं, तो हम आपके उदाहरण खाते में EVENT.COMPLETED वेबहूक के लिए पंजीकृत URL के लिए एक पोस्ट अनुरोध करेंगे।
तो, संक्षेप में: एपीआई वह जगह है जहां आप example.com चीजें बताते हैं और Webhooks वह जगह है जहाँ example.com आपको चीजें बताता है।
सास एक अवधारणा है - सॉफ्टवेयर का विचार जो क्लाउड में मौजूद है और क्लाइंट आमतौर पर एक ब्राउज़र है। सास एप्लिकेशन को उन फ़ंक्शन द्वारा परिभाषित किया जाता है जो इसे एक उपयोगकर्ता को प्रदान कर सकता है (उदाहरण के लिए Salesforce एक डेटाबेस प्रदान करता है जिसका उपयोग ग्राहक जानकारी को संग्रहीत करने के लिए किया जा सकता है) उपलब्ध फ़ंक्शन एप्लिकेशन के उद्देश्य से निर्धारित होते हैं (जैसे: सीआरएम, ईमेल ब्लास्टर, सीएमएस , आदि।)।
एक एपीआई सास अनुप्रयोगों के लिए एक आम संचार विधि (ReST, SOAP, JSON, आदि) के माध्यम से अन्य अनुप्रयोगों के साथ जुड़ने का एक तरीका है। एक API दूसरे API से सीधे बात नहीं कर सकता है। एक एपीआई का उपयोग कोडित एप्लिकेशन या मिडलवेयर द्वारा किया जा सकता है जो दो एपीआई के बीच पुल का काम करता है और निष्पादन के धागे को चलाता है। उदाहरण के लिए - NetSuite और Salesforce दोनों के पास SOAP API है, लेकिन उनके लिए संवाद करने के लिए - आप मिडलवेयर सॉफ़्टवेयर का उपयोग करना चाहते हैं जो दोनों प्रणालियों के साथ बातचीत कर सकता है और Salesforce के API के माध्यम से नए संपर्क रिकॉर्ड्स को कॉन्फ़िगर करने और NetSite के माध्यम से नए रिकॉर्ड पुश करने के लिए कॉन्फ़िगर किया जा सकता है यह हर घंटे एपीआई है।
Webhooks SaaS अनुप्रयोगों के लिए एक और संचार प्रोटोकॉल है जो अनुप्रयोगों के बीच संचार की अनुमति देता है, लेकिन निष्पादन के धागे को नियंत्रित करने के लिए केवल HTTP POSTS का उपयोग करता है। Webhooks किसी एप्लिकेशन को मिडलवेयर का उपयोग किए बिना सीधे एक दूसरे से बात करने की अनुमति देता है। उदाहरण के लिए - जब आप वूफ़ू को एक फॉर्म सबमिट करते हैं, तो इसे वेबहूक HTTP POST को किसी अन्य सेवा में आरंभ करने और फ़ॉर्म सबमिट करने से कुछ फ़ील्ड मानों को पार करने के लिए सेट किया जा सकता है। Webhooks का उपयोग API के साथ संयोजन के रूप में भी किया जा सकता है - उदाहरण के लिए, webhook के बाद id x को रिकॉर्ड करने के लिए कुछ अन्य एप्लिकेशन को सूचित करने पर, वह एप्लिकेशन नए फ़ील्ड मानों की जाँच करने या स्थिति को संशोधित करने के लिए सेवा के साथ संचार करने के लिए API का उपयोग कर सकता है एक रिकॉर्ड।
सास एप्लिकेशन के बिना एपीआई या वेबहुक होना मुश्किल है। हालाँकि, आपके पास आसानी से एक SaaS एप्लिकेशन हो सकता है जो webhooks या a (public) API का उपयोग नहीं करता है। इसी तरह, आपके सास आवेदन के कार्यों के आधार पर, आप webhooks या API का उपयोग करना चुन सकते हैं।