Pierwszą i główną różnicą między nimi jest to, że w przypadku większości interfejsów API pojawia się żądanie, po którym następuje odpowiedź. Haczyk internetowy nie wymaga żadnego żądania, po prostu wysyła dane, gdy są dostępne.
Interfejs API jest interfejsem do twoich danych w example.com. Interfejs API jest używany z Twojego serwera na platformie przyklad.com i może być używany do wyświetlania, tworzenia, edytowania lub usuwania elementów.
Haki internetowe to zautomatyzowane połączenia z example.com na Twój serwer, uruchamiane, gdy określone zdarzenie nastąpi w example.com. Na przykład, gdy zadanie zostanie zakończone i chcesz o nim wiedzieć w czasie rzeczywistym, prześlemy żądanie POST na adres URL zarejestrowany dla haka EVENT.COMPLETED na Twoim przykładowym koncie.
W skrócie: API to miejsce, w którym opowiadasz przykładom.com, a Webhooks to miejsce, w którym przykład.com mówi ci rzeczy.
SaaS to koncepcja - idea oprogramowania, które istnieje w chmurze, a klient jest ogólnie przeglądarką. Aplikacja SaaS jest zdefiniowana przez funkcje, które może zapewnić użytkownikowi (na przykład Salesforce zapewnia bazę danych, która może służyć do przechowywania informacji o kliencie), dostępne funkcje są określone przez cel aplikacji (tj .: CRM, Email Blaster, CMS itp.).
Interfejs API to sposób na łączenie aplikacji SaaS z innymi aplikacjami za pomocą wspólnej metody komunikacji (ReST, SOAP, JSON itp.). Interfejs API nie może mówić bezpośrednio do innego interfejsu API. Interfejs API może być używany przez zakodowaną aplikację lub oprogramowanie pośrednie, które działa jako pomost między dwoma interfejsami API i uruchamia wątek wykonania. Na przykład - zarówno NetSuite, jak i Salesforce mają interfejs API SOAP, ale do komunikacji - chcesz użyć oprogramowania pośredniego, które może wchodzić w interakcje z oboma systemami i być skonfigurowane do pobierania nowych rekordów kontaktów za pośrednictwem interfejsu API Salesforce i przesyłania nowych rekordów do NetSuite za pośrednictwem to API co godzinę.
Webhooks to kolejny protokół komunikacyjny dla aplikacji SaaS, który pozwala na komunikację między aplikacjami, ale po prostu używa HTTP POSTS do kontrolowania wątku wykonania. Haki internetowe umożliwiają aplikacjom bezpośrednie komunikowanie się ze sobą, bez użycia oprogramowania pośredniego. Na przykład - po przesłaniu formularza do WuFoo można go skonfigurować w taki sposób, aby inicjował HTTP POST webhooks do innej usługi i przekazywał niektóre wartości pól z przesłanego formularza. Haczyków internetowych można również używać w połączeniu z interfejsem API - na przykład po powiadomieniu przez inną aplikację, że coś się stało, aby zarejestrować identyfikator X, ta aplikacja może użyć interfejsu API do komunikacji z usługą w celu sprawdzenia nowych wartości pól lub zmodyfikowania stanu nagranie.
Trudno mieć API lub webhooki bez aplikacji SaaS. Możesz jednak łatwo mieć aplikację SaaS, która nie korzysta z haków internetowych ani (publicznego) interfejsu API. Podobnie, w zależności od funkcji aplikacji SaaS, możesz zdecydować się na użycie haków internetowych LUB interfejsu API.