Twórz Własne Automatyzacje
3 godz. 14 min · Make · Biznes i Automatyzacje
Adam GospodarczykKorzystając z różnych narzędzi, na przykład do obsługi mailingu, masz do dyspozycji na ogół kilka wbudowanych integracji - przykładowo połączenie z kalendarzem czy bramką płatności. Wyobraź sobie, że takie narzędzie możesz połączyć praktycznie z dowolnym innym, nawet jeśli nie ma go na liście. To właśnie potencjał Make, które umożliwi takie automatyzacje.
Jeśli znasz Zapier, Make to podobna koncepcja, ale daje dużo bardziej zaawansowane możliwości, jest dużo tańsza (lub darmowa) a dodatkowo, ma naszym zdaniem bardziej przyjazny i czytelny interfejs zwłaszcza przy tworzeniu rozgałęzionych scenariuszy. Tworzenie automatyzacji z Make to czysta przyjemność i zdrowa porcja dopaminy!
Co najważniejsze, Make umożliwia tworzenie automatyzacji bez użycia ani jednej linii kodu! To jak programowanie 2.0, gdzie rezultaty widzisz i testujesz w prostym, wizualnym edytorze. To najłatwiejszy sposób aby zacząć przygodę z programowaniem i nowoczesnym podejściem do technologii no-code i low-code.
Mimo, że Make jest natywnym środowiskiem no-code, osoby, które nieco lepiej rozumieją zasady działania protokołu HTTP i API i mają podstawy programowania w JS, otrzymują zupełnie nowe możliwości tworzenia oprogramowania, w sposób wizualny i prostszy niż kiedykolwiek. Jeśli osoby początkujące z Make stają się programistami, programiści stają się superbohaterami!
Wyjątkowe w Make jest podejście do tworzenia automatyzacji wizualnie, gdzie bardzo czytelne jest całe flow scenariusza i to, jak przepływają w nim dane. Zaawansowane możliwości jak stosowanie filtrów czy funkcji sprawia, że w tak prostym interfejsie w zasadzie nie ma zadań niemożliwych!
Z dowolnego narzędzia możesz wysłać dane w postaci Webhooka do Make, które zostaną natychmiastowo odebrane. Następnie możesz łatwo przekazać je w dowolne miejsce i do dowolnego narzędzia - na przykład Airtable, z którego często korzystamy aby gromadzić dane, HubSpot'a, Asany czy wysłać powiadomienie SMS, e-mail, Slack. Całość zajmie Ci kilka minut.
Ten kurs jest przeznaczony dla każdej osoby, która chce pracować wydajniej i zatrudnić roboty (automatyzacje), które wykonają za nią powtarzalne zadania. Dzięki temu, zwiększysz efektywność swojej pracy oraz zostaniesz bohaterem automatyzacji w swojej firmie. Osoby, które przerobiły kurs HTTP i API, a także programiści, mogą wycisnąć z tego kursu jeszcze więcej, na dobre zmieniając swoje podejście do automatyzacji. Polecamy wcześniejsze przerobienie przynajmniej kursu HTTP i API, aby lepiej zrozumieć omawiane zagadnienia.
Cześć! W tej lekcji powiem Ci wszystko, co musisz
wiedzieć na temat modułu HTTP, który jest prawdopodobnie najpotężniejszym modułem
spośród wszystkich dostępnych w Integromacie.
Wynika to z faktu, że dzięki niemu możesz
łączyć się z usługami, które nie posiadają integracji z Integromat'em, ale udostępniają API.
Poza tym, tak jak już pokazywałem, możesz wykorzystać akcje typu make a request do
tego, aby pobierać zawartość strony z zapytaniem typu GET.
Natomiast tym razem nie będziemy skupiać się tutaj na podstawach, które są już Ci
znane, natomiast wykorzystamy całą dotychczasową wiedzę na temat API oraz
HTTP oraz tworzenia obiektów JSON i pracy z nimi.
Z tego powodu, jeżeli lektura naszego ebooka i konkretnie rozdziału Podstawy
pracy z API i HTTP oraz obejrzenie kursu Grzegorza na ten temat są jeszcze przed
Tobą, polecam Ci zatrzymać teraz ten materiał i nadrobić zaległości.
Jeżeli jednak HTTP i API nie stanowią już
dla Ciebie większego problemu, no to zostań ze mną.
Zacznijmy od tego, że niektóre API, z których przyjdzie Ci korzystać są
bezpłatne i dodatkowo nie wymagają żadnej autoryzacji.
Coś takiego zdarza się co prawda rzadko, ale jednak się zdarza.
W takiej sytuacji wystarczy skorzystać z dokumentacji i wykorzystać moduł make a
request do tego, aby podać adres URL, metodę HTTP oraz ewentualne parametry,
które posłużą do tego, aby pracować z danymi.
Jednak w większości przypadków będzie wymagane od Ciebie podanie jakiegoś klucza
API, który będzie przypisany do Twojego konta.
Taki klucz posiada prawa dostępu do
Twojego konta i tym samym zasobów, do którego to konto ma dostęp.
Zatem przykładowo, jeżeli mamy tutaj serwis
Brandfetch, który umożliwia Ci wpisanie nazwy jakiegoś serwisu, a następnie pobranie
jego logotypu, to oczywiście możesz pobierać te logotypy korzystając z dostępnego
tutaj interfejsu lub też skorzystać z dostępnego API.
I tutaj swoją drogą nie wiem czy to było do końca jasne, ale zwróć uwagę, że API w
tym serwisie jest tutaj tak ważne, że znajduje się w głównej nawigacji.
Zwykle informacje na temat API umieszczone
są gdzieś w stopce lub trzeba po prostu wpisać nazwę serwisu, a następnie API.
Do tego, aby uzyskać dostęp do tego API, bądź strony dla programistów, która
wyjaśnia w jaki sposób można połączyć się z API.
Idąc dalej, korzystanie z dokumentacji
jest w większości przypadkach bardzo proste, tym bardziej, że jeżeli mamy do
czynienia z serwisem, który jest zaprojektowany przede wszystkim z myślą o
API, to raczej jego twórcy dbają o to, aby dokumentacja była jasna i przejrzysta.
Zwykle na jej początku znajdziemy informacje, które wyjaśniają w jaki sposób
możemy podłączyć się do tego API oraz w jaki sposób z nim pracować.
Polecam Ci na spokojnie za każdym razem
się zapoznać z tą sekcją ze względu na to, że możesz znaleźć tutaj wiele wskazówek,
które uchronią Cię przed ewentualnymi błędami.
Przykładowo tutaj od razu mamy informację
o tym, że w celu autoryzacji wystarczy przekazać klucz API w nagłówku.
Nie jest to jednak do końca wyjaśnione w
jakim konkretnie nagłówku to ma zostać przesłane.
Domyślam się, że w nagłówku Authorization.
Natomiast tutaj po rzuceniu okiem na
przykład widzimy jednak, że jestem w błędzie.
Mianowicie musimy tutaj przesłać nagłówek
o kluczu x-api-key, a następnie dopiero podać nasz klucz API.
Oznacza to, że jeżeli będziemy łączyć się
z tym serwisem z poziomu Integromat'u, to oczywiście możemy skorzystać z modułu Make
a request, a następnie właśnie w sekcji Headers przekazać tutaj odpowiedni klucz
nagłówka pochodzący bezpośrednio z API, a następnie nasz klucz API,
do którego możemy uzyskać dostęp po zalogowaniu do tego serwisu.
Akurat tak się składa, że posiadam już
swoje konto w tym serwisie, ale do połączenia nie wykorzystamy tutaj modułu
make a request, tylko sięgniemy po specjalny moduł umożliwiający nam połączenie z API,
którego uwierzytelnienie odbywa się na podstawie klucza API.
Zatem podaję tutaj nazwę Brandfetch.
Do tego, aby zidentyfikować połączenie, a następnie wklejam tutaj mój klucz API.
Następnie muszę tutaj wskazać w którym miejscu ma zostać dodany ten klucz API i
może to być albo bezpośrednio w nagłówku, albo jako parametr query string.
To, w którym miejscu umieszczamy klucz API
praktycznie zawsze zapisane jest w dokumentacji.
W naszym przypadku mieliśmy informację o
tym, że klucz API mamy przekazać w nagłówku.
Mało tego, w tym przykładzie znajduje się
informacja jaki klucz musi posiadać ten nagłówek.
Zatem uzupełniam tutaj odpowiedni nagłówek, a następnie zapisuję połączenie.
No to teraz możemy przetestować zapytanie podając tutaj adres, a następnie
wybierając metodę POST, ponieważ właśnie taka jest tutaj wymagana.
Następnie musimy zajrzeć do dokumentacji i
zobaczyć jakie parametry musimy przesłać do tego serwisu.
W tym przypadku wymaganym parametrem oznaczonym gwiazdką jest parametr domain.
I teraz jeżeli chodzi o parametry to możemy przekazywać je w różny sposób albo
jako query string, albo jako treść zapytania.
W związku z tym, że posiadam już komplet
wiedzy z naszego ebooka oraz kursu Grześka, wiem doskonale, że w przypadku
metody POST raczej dane przekazywane są z pomocą ładunku, czyli tzw.
payload.
Wybieram tutaj opcję Raw, a następnie
format JSON i tutaj jako request przekazuję obiekt zawierający jedną
właściwość domain, a jej wartość ustawiam na adres strony.
I w tym przypadku pobierzemy sobie logo Facebook'a.
Jeżeli wykonamy nasz scenariusz.
No to w odpowiedzi otrzymaliśmy tutaj status 200 informujący nas o tym, że
wszystko poszło ok, a dodatkowo jako data otrzymaliśmy obiekt JSON.
I tutaj, aby pracować z tymi danymi mamy tak naprawdę dwa wyjścia.
Pierwszym z nich jest wykorzystanie modułu JSON, a konkretnie akcji parse JSON,
do którego przekazujemy JSON string, czyli naszą właściwość data.
I w efekcie otrzymujemy tutaj właściwości, na których będziemy mogli operować.
Zwróć uwagę, że rzeczywiście nasz
obiekt jest tutaj dostępny i możemy łatwo pracować z jego właściwościami.
Jednocześnie muszę przyznać, że coś takiego nie jest wymagane ze względu na
to, że możemy tutaj po prostu zaznaczyć opcję parse response.
Do tego, aby wykonać akcję, którą przed
chwilą usunąłem po prostu zaraz po pobraniu danych.
Dzięki temu możemy pracować tutaj już
bezpośrednio na obiekcie data i odczytywać poszczególne właściwości obiektu JSON,
które zostały do nas przekazane. W pracy z API
w ten sposób jest jeszcze jedna rzecz, o której muszę Ci powiedzieć.
Mianowicie chodzi o wykorzystanie akcji Create a JSON do tego, aby utworzyć strukturę
obiektu, która zostanie przesłana do naszego API.
Zatem w tej sytuacji kolejność naszych modułów się odwróci i w pierwszej
kolejności utworzymy tutaj obiekt JSON, który przekażemy do naszego API.
Jego struktura w tej sytuacji będzie
niesamowicie prosta, ale i tak do jej utworzenia wykorzystamy generator.
Po zapisaniu tej tutaj musimy podać tutaj adres URL, którego logotyp chcemy pobrać.
Zatem przekazuję tutaj ponownie facebook.com,
a następnie stworzony tutaj obiekt JSON przekazuje jako ładunek naszego zapytania.
I teraz oczywiście po wykonaniu otrzymamy dokładnie taki sam rezultat i być może
zastanawiasz się dlaczego w ogóle wykorzystałem ten dodatkowy moduł.
A ja mam ku temu bardzo konkretne uzasadnienie.
Mianowicie tworzenie struktury obiektu JSON
w niektórych sytuacjach może sprawić Ci dużo problemu.
Np. w sytuacji, gdy po prostu
zrobisz literówkę i np. zapomnisz, aby dodać cudzysłów.
Jednocześnie może się okazać, że wewnątrz wartości, którą chcesz tutaj przekazać,
znajduje się inny cudzysłów i tak naprawdę nie zawsze zależy to tylko od Ciebie.
Z tego powodu, jeżeli tutaj przekażemy np. facebook.com, ale
com zostanie zapisane w cudzysłowie, no to
struktura naszego obiektu JSON przestanie tutaj działać.
Efektem czegoś takiego będzie oczywiście
błąd naszego scenariusza, a tym samym nasza automatyzacja się tutaj zatrzyma.
Jeżeli jednak dokładnie tę samą wartość
przekaże do naszego modułu, to zwróć uwagę co się stanie.
Scenariusz został wykonany poprawnie, ale oczywiście nie otrzymaliśmy tutaj adresu
URL, ponieważ taka strona nie istnieje i mamy tego tutaj potwierdzenie.
Natomiast jednocześnie jeżeli spojrzymy sobie na strukturę obiektu JSON, to widzimy, że
ten dodatkowy cudzysłów został poprzedzony back slash'em.
Taki zapis to inaczej escepowanie danych,
czyli jest to technika stosowana do tego, aby posługiwać się znakami specjalnymi,
które normalnie znaczą coś innego w momencie, gdy poprzedza back slash'em.
Informujemy, że te znaki nie mają być potraktowane jako faktyczny cudzysłów
stanowiący część obiektu JSON, tylko po prostu jako część ciągu znaków.
Zatem podsumowując korzystanie tutaj z akcji create JSON,
uchronić się po prostu przed błędami związanymi z budowaniem struktury
oraz ewentualnymi danymi, które mogą zepsuć domyślną strukturę JSON'a.
Idąc dalej, jeżeli chodzi o połączenie z API, to raz jeszcze podkreślam, że
korzystanie z dokumentacji jest tutaj niesamowicie istotne.
Dodatkowo pamiętaj o tym, że w API mogą pojawić się ewentualne błędy, ale też
bardzo łatwo popełnić błąd przy próbie pracy z nim.
Mianowicie łatwo tutaj przekazać np.
dane jako query string, a nie jako request body i w efekcie takie przekazanie
informacji nie odbędzie się tutaj poprawnie i API zwróci nam niepożądany wynik.
Poza tym bardzo często może zdarzyć się tak, że w ogóle proces uwierzytelnienia
API będzie na tyle skomplikowany, że zajmie Ci najwięcej czasu.
Wynika to z faktu, że podczas przekazania
zwykłego klucza API nie ma z tym szczególnego problemu.
Tak już w przypadku mechanizmu OAuth 2.0 mogą pojawić się większe problemy.
Gdyby tego było mało, to różne serwisy w
różny sposób zabezpieczają się przed tym, aby uzyskać dostęp do API.
Przykładowo w przypadku wFirmy
musimy na początku zarejestrować
naszą aplikację i poczekać kilka dni na jej akceptację.
Dopiero wtedy uzyskujemy specjalne dane,
które możemy wykorzystać w procesie uwierzytelnienia.
Natomiast zanim przejdziemy do tych bardziej złożonych procesów, chciałbym
pokazać Ci jeszcze jeden moduł, który ułatwi Ci komunikację.
W przypadku autoryzacji z wykorzystaniem Basic Auth taka autoryzacja wymaga od nas
podania loginu i hasła dostępu, które trzeba odpowiednio zaszyfrować.
Coś takiego oczywiście możesz zrobić
samodzielnie lub też skorzystać z modułu Integromat'u, w którym po prostu podajesz swój
login oraz hasło, a Integromat dba o odpowiednie przetworzenie tych danych i
jednocześnie umieszczenie ich w odpowiednim nagłówku.
Zatem w przypadku Basic Auth bardzo polecam Ci wykorzystanie tego modułu.
No to teraz myślę, że możemy przyjrzeć się
jeszcze dwóm przykładom API, które pokażą Ci, że to co do tej pory powiedziałem ma
naprawdę sens, bo mianowicie przejdziemy na stronę inFakt'u, gdzie dokładnie w
dolnej części strony znajduje się zakładka API, w której znajdziemy informacje dla
developerów oraz dokumentację, która najbardziej nas tutaj interesuje.
No i analogicznie jak to było w przypadku Brandfetch, inFakt w pierwszej kolejności
informuje nas o tym, jak możemy w ogóle połączyć się z tym API.
I tutaj znowu mamy informację, że po
prostu po zalogowaniu do aplikacji możemy w ustawieniach konta znaleźć nasz klucz
API i musimy przekazać go w nagłówku o kluczu x-infakt-ApiKey.
Mając takie informacje mamy w zasadzie wszystko, czego potrzebujemy do tego, aby
łączyć się z dowolnymi endpoint'ami ami udostępnionymi przez inFakt.
Przykładowo, możemy tutaj poczytać na temat właściwości, które są dostępne w
przypadku pobierania danych o klientach oraz tego, w jaki sposób właściwie pobrać
te dane, czyli na jaki endpoint powinniśmy wysłać takie zapytanie.
Zła wiadomość jest tutaj taka, że nie ma możliwości pokazania Ci wszystkich
możliwych API i dodatkowo może zdarzyć się tak, że np.
przyjdzie Ci pracować z dokumentacją, która nie jest aktualna lub np.
w przypadku proces uwierzytelnienia jest
zupełnie niezgodny z jakimikolwiek standardami, bo po prostu został wymyślony
przez programistów tworzących tą aplikację.
W takiej sytuacji i tak pierwszą pomoc
jaką możesz uzyskać znajdziesz w dokumentacji, a ewentualnie możesz sięgnąć
po support i skontaktować się z twórcami tej aplikacji bezpośrednio.
Bardzo często możesz uzyskać w ten sposób pomoc.
Idąc dalej mamy tutaj kolejny przykład,
tym razem serwisu fakturowania.pl, który również udostępnia dość dobrze opisane
API, które w tym przypadku znajduje się w repozytorium GitHub'a.
Tutaj ponownie, tak jak w przypadku wszystkich pozostałych API, mamy na
początku informacje w jaki sposób możemy się z nim połączyć oraz w jaki sposób
możemy tutaj uzyskać oraz przekazywać klucz API.
Także myślę, że na ten moment nie ma tutaj z tym żadnego problemu.
Ale jednocześnie, tak jak powiedziałem,
problemy mogą pojawić się w przypadku bardziej złożonych procesów
uwierzytelnienia, tak jak w przypadku chociażby Slack'a.
Muszę przyznać, że jest to jedno z
najbardziej zaawansowanych API, z jakim przyszło mi do tej pory pracować i
jednocześnie połączenie się z nim nie było do końca łatwe.
Jednocześnie muszę Ci powiedzieć o tym, że jeżeli przyjdzie Ci pracować z API
jakiegoś serwisu, to w pierwszej kolejności sprawdź czy posiada integrację
z Integromat'em, a dodatkowo czy znajduje się tutaj akcja typu make an API Call.
Taka akcja dostępna jest w różnych
usługach, które oferują integrację z Integromat'em, ale jednocześnie nie wszystkie
dostępne w API akcje są przygotowane jako moduł.
Oznacza to, że jeżeli widzisz jakąś integrację i brakuje Ci jakiejś funkcji,
to istnieje szansa na to, że znajduje się ona w API, ale jednocześnie do jej
wywołania będziesz potrzebować wykonać zapytanie ręcznie.
Skorzystanie z tego modułu jest niesamowicie prostsze ze względu na to, że
posiadasz już w pełni skonfigurowane połączenie i Twoim zadaniem jest wyłącznie
przekazanie adresu URL i ewentualnie przekazanie jakiś dodatkowych danych,
które zostaną wykorzystane podczas wykonywania zapytania.
Zatem moja ogólna rekomendacja jest taka,
aby w pierwszej kolejności sprawdzić, czy dostępna integracja nie pozwala Ci na
łatwiejszą pracę z API niż tworzenie połączenia samodzielnie.
Jeżeli jednak nadal coś takiego nie jest
możliwe, to przejdziemy sobie teraz przez proces połączenia się z API Slack'a,
umożliwiający pracę z API wykorzystującym mechanizm OAuth 2.0.
Tutaj pierwszym krokiem jak zwykle jest utworzenie połączenia.
Połączenie możemy nazwać jak tylko chcemy.
Natomiast dalej musimy tutaj wypełnić
pewne informacje, które na pierwszy rzut oka wyglądają bardzo groźnie.
Przede wszystkim musimy określić tzw. flow type.
Jest to informacja na temat tego, w jaki sposób przebiega uwierzytelnienie
i taką informację również zawsze znajdziesz w API.
W przypadku Slack'a jest to Authorization Code.
Następnie musimy przekazać tutaj Authorize URI oraz Token URI.
Informacje na ich temat znajdziesz w
naszym ebook'u, więc nie będę się tutaj powtarzał.
Natomiast są to specjalne adresy URL
wykorzystywane w procesie uwierzytelnienia OAuth 2.0.
I akurat jednym z najprostszych sposobów na ich odnalezienie jest po prostu
wykorzystanie wbudowanej w przeglądarkę wyszukiwarki lub też po prostu
przeszukanie API w poszukiwaniu słowa authorize URL bądź authorize URI.
Jak widzisz, mamy tutaj adres, który
możemy skopiować do Integromat'u i
w drugiej kolejności to samo robimy z token URI.
W tym przypadku ten adres dotyczy tak
zwanego access tokena i jeżeli chodzi o Slack'a wygląda następująco.
Zatem zabieram ten adres i przekazuję do Integromat'u i lecimy tutaj dalej.
Akurat w przypadku Slack'a, ale i nie
tylko, bo taki mechanizm wykorzystuje niemal każde API wykorzystujące OAuth 2.0.
Musimy podać tutaj tzw.
scope, czyli zakres uprawnień, które może posiadać to połączenie.
Tutaj ponownie musimy sięgnąć do dokumentacji, a następnie znowu wyszukać
słowo kluczowe scope bezpośrednio w dokumentacji.
Tutaj widzimy, że nawet w menu mamy
dostępną zakładkę na temat dostępnych scope'ów.
Jak widzisz, akurat w przypadku Slack'a jest ich naprawdę bardzo, bardzo dużo.
Natomiast dobra wiadomość jest taka, że
nie musimy się zawsze odwoływać bezpośrednio do konkretnego scope'a, tylko
możemy odwoływać się bezpośrednio do grupy.
Czyli np.
nas będzie interesowało to, aby odczytać informacje na temat konwersacji.
Zatem w takiej sytuacji najprostszym sposobem będzie po prostu odnalezienie
endpoint'a, z pomocą którego będziemy mogli uzyskać dostęp do tych informacji.
No i tutaj rzeczywiście znajduje się
wskazówka, że potrzebujemy specjalnych uprawnień o nazwie Channels Read.
Oznacza to, że mogę po prostu skopiować tą wartość, a następnie wkleić do Integromat'u.
No i ostatnimi danymi, które będą mi tutaj
potrzebne jest client ID oraz client secret.
Takie dane dostępne są albo bezpośrednio po zalogowaniu do mojego konta, albo tak
jak w przypadku Slack'a musimy tutaj utworzyć nową aplikację.
No to tworzę tutaj nową aplikację i
wybieram opcję From Scratch i nadaje jej tutaj nazwę.
Tutaj jeszcze muszę wybrać Workspace w
którym ma funkcjonować ta aplikacja.
No i następnie mogę ją po prostu utworzyć.
Tutaj nieco niżej mamy informacje, które
nas interesują, czyli client ID oraz client secret.
Oczywiście nie udostępniaj proszę nikomu tych danych, ponieważ mają one uprawnienia
takie jak Twój login oraz hasło. Do ich wykorzystania
wystarczy przekazać je do Integromat'u, a następnie zapisać połączenie.
Jednak zanim to zrobimy, musimy zrobić jeszcze jedną rzecz.
Mianowicie musimy powiedzieć Slack'owi,
że Integromat ma prawo do tego, aby dostać się do naszej aplikacji.
W tym celu w dokumentacji Integromat'u musimy odnaleźć tzw.
OAuth2 Redirect URI.
Taki adres musimy dodać bezpośrednio do naszej aplikacji.
Konkretnie w zakładce dotyczącej uprawnień.
Mamy tutaj faktycznie sekcję Redirect URL,
do której przekazujemy adres, który skopiowali bezpośrednio z Integromat'u.
Dobra wiadomość jest taka, że w przypadku OAuth 2.0 adres przekierowania na Integromat
jest zawsze taki sam i możesz go sobie tutaj zachować.
Oczywiście on w przyszłości może się
zmienić, natomiast z pewnością Integromat Cię będzie o tym informować.
W każdym razie w momencie, gdy mamy to już
wszystko zrobione, możemy zaakceptować połączenie.
A następnie jak widzisz, zostaniemy przekierowani do ekranu, w którym musimy
zaakceptować uprawnienia wymagane przez Integromat.
Po zaakceptowaniu zmian wystarczy, że
wklejamy tutaj adres URL, na którym nam zależy, a następnie wykonamy zapytanie.
Jeżeli wszystko poszło tutaj ok i wygląda na to, że tak jest.
Ponieważ mamy status 200, to tutaj powinny
znaleźć się informacje o dostępnych kanałach.
Jeżeli dodatkowo zaznaczymy opcję parse response to będziemy mogli wejść w
interakcję z nimi odczytując informacje na temat poszczególnych kanałów.
No i wygląda na to, że zapytania zostały wykonane poprawnie, a my mamy tutaj dostęp
do wszystkich informacji na temat kanałów, które znajdują się na moim koncie.
Zatem jak widzisz, proces uwierzytelnienia API w przypadku Slack'a był naprawdę bardzo
skomplikowany i jednocześnie łatwo popełnić tutaj błąd.
Dodatkowo w przypadku API musisz zwracać jeszcze uwagę na jedną rzecz.
Mianowicie nie wszystkie endpoint'y dostępne są na wszystkich planach.
Dla przykładu w przypadku Slack'a wiele
uprawnień dostępnych jest wyłącznie w planie płatnym, a dodatkowo czasem nie
tylko w planie płatnym, ale również takim dostępnym wyłącznie dla firm.
Z tego powodu musisz zwracać na to uwagę ze względu na to, że jeżeli wykonasz
zapytanie na taki endpoint, to często w informacji zwrotnej nie otrzymasz
informacji o tym, że nie posiadasz odpowiedniego planu, tylko że po prostu
nie masz uprawnień do tego, aby uzyskać dostęp do danego endpoint'u.
Coś takiego może łatwo wprowadzić Cię w błąd i doprowadzić do sytuacji, że będziesz mocno
zastanawiać się nad tym, w jaki sposób możesz jednak odczytać te informacje, a
tak naprawdę będzie to po prostu zablokowane.
To jest taka mała wskazówka, którą chciałem Ci dać na sam koniec.
Natomiast jeszcze zanim zakończymy, chciałbym jeszcze przejść krótko przez ten
ostatni proces uwierzytelnienia z wykorzystaniem OAuth 2.0.
Przede wszystkim raz jeszcze zachęcam Cię do tego, aby zajrzeć do naszego ebook'a
oraz aby zajrzeć do naszego ebook'a oraz zajrzeć do naszego ebook'a, ponieważ
dokładnie w jednym z rozdziałów tłumaczę krok po kroku czym jest OAuth 2.0 oraz wyjaśniam
wszystkie pojęcia, które są z nim związane.
Wiedza na ich temat z pewnością ułatwi Ci wykorzystanie OAuth 2.0 i uchroni Cię przed
utratą wielu godzin i frustracji spędzonych na próbie połączenia.
Dodatkowo musisz zwrócić tutaj uwagę na fakt, że zawsze wymagane są tutaj cztery
pola, mianowicie authorize URI, token URI, client ID oraz client secret.
Wszystkie te informacje możesz znaleźć na
swoim koncie, bądź też tak jak w przypadku Slack'a, poprzez utworzenie specjalnej
aplikacji dostępnej zwykle w zakładce dla developerów.
Tworząc taką aplikację uzyskujesz dostęp do wszystkich danych, które są tutaj
niezbędne, a dodatkowo musisz przekazać do tej aplikacji informację o tym, że
Integromat jest autoryzowaną aplikacją której pozwalasz na dostęp do niej.
Odbywa się to właśnie poprzez przekazanie
tego OAuth Redirect URI, który w przypadku Integromat'u zawsze jest taki sam.
Mogą zdarzyć się jednak przypadki, w
których sam proces uwierzytelnienia będzie nieco bardziej skomplikowany, bo tak jak
mamy nawet tutaj na przykładzie poza samym wskazaniem Redirect URI musimy jeszcze
dodać tutaj informację o tym, że cała domena Integromat.com jest na tzw.
białej liście i tym samym wszystkie połączenia z tej domeny są akceptowane.
Raz jeszcze muszę tutaj podkreślić, że w przypadku autoryzacji już nieważne, którym
sposobem najbardziej przydatna jest
dokumentacja oraz przykłady, które są w niej zawarte.
Próbując odwzorować przykłady, które znajdziesz w dokumentacji bezpośrednio w
Integromacie, zwykle znajdziesz sposób na to, aby połączyć się z API, a to jak już
widzisz daje niesamowite możliwości, chociażby ze względu na to, że uzyskujesz
dostęp do elementów, które mogą być niedostępne w natywnych modułach Integromat'u
w tym momencie doszliśmy już do końca tej lekcji, więc chciałbym podziękować Ci za
uwagę i zaprosić Cię do kolejnych materiałów.
Cześć!