W tym rozdziale
Jest możliwe, że podczas lektury tego rozdziału, będziesz, jako osoba początkująca z automatyzacją, zadawać sobie pytanie:
Po jaką cholerę ja muszę to wiedzieć?
Zatem, mimo, że umiejętności z zakresu API wdrożysz dopiero w kolejnych rozdziałach, już teraz chcę zaadresować Twoją niecierpliwość i powiedzieć, po kiego grzyba umieściliśmy tę część w e-booku. Bez zrozumienia podstawowych pojęć omawianych poniżej, da się robić co najwyżej przeciętne automatyzacje, polegające na wyklikiwaniu na ogół na ślepo modułów i łączeniu ich ze sobą. Zrozumienie podstaw, nawet jeśli miałbyś teraz je przeskanować, a następnie do nich wracać, jest kluczowe, ponieważ w automatyzacjach będziemy właśnie wykorzystywać API aby sklejać ze sobą rozmaite mechanizmy.
Jak już wiesz, żeby wysłać wiadomość na Slacku, musisz użyć właśnie API Slacka. I popularne narzędzia do automatyzacji mają to wbudowane jako moduł, więc niewiele musisz rozumieć. Ale jak to zwykle bywa, stworzenie czegoś dopasowanego idealnie do naszych potrzeb wymaga trochę szerszej wiedzy. To właśnie jest to magiczne miejsce, w którym automatyzacja mam największy potencjał. Rozumiejąc pojęcia poniżej będziesz w stanie przeskoczyć ograniczenia popularnych narzędzi i samemu tworzyć integracje, pukając pod odpowiednie endpointy po dane. Zrozumiesz także dużo lepiej, jak w ogóle działa internet i przeglądarka. Do dzieła - wierzę w Ciebie!
API w praktyce to zestaw adresów URL, np.:
GET [<https://zautomatyzowani.pl/api/users>](<https://zautomatyzowani.pl/api/users>)
POST [<https://zautomatyzowani.pl/api/users>](<https://zautomatyzowani.pl/api/users>)
GET [<https://zautomatyzowani.pl/api/users/1>](<https://zautomatyzowani.pl/api/users/1>)
PUT [<https://zautomatyzowani.pl/api/users/1>](<https://zautomatyzowani.pl/api/users/1>)
// (to przykładowe adresy - nie działają)
Jak widzisz są to zwykłe adresy, identyczne jak te które wpisujemy w przeglądarce. Te jednak przygotowane są tak, aby nie wyświetlać nam stron www tylko zwracać informacje na temat podejmowanych działań.
Np. wchodząc na tzw. endpoint /api/users
, w odpowiedzi otrzymujemy zazwyczaj listę użytkowników. Z kolei endpoint /api/users/1
zwróci nam informacje na temat użytkownika o identyfikatorze 1. Te końcówki adresu nazywamy też URI
, podczas gdy całe adresy - URL
.
Jak łatwo się domyślić, dostęp do API niemal zawsze jest ograniczony ze względów biznesowych, technicznych, czy bezpieczeństwa. Z tego powodu musimy posiadać odpowiednie uprawnienia.
Zazwyczaj dostęp do stron i aplikacji uzyskujemy z pomocą loginu oraz hasła. W przypadku API mamy do czynienia z ich odpowiednikiem w postaci klucza api (API Key), tokenu (API token) lub pary w postaci Identyfikatora Klienta (Client ID) oraz Sekretnego ciągu znaków (Client Secret).
Praktycznie w każdym przypadku powyższe dane możemy znaleźć w panelu użytkownika wybranej aplikacji lub usługi, w sekcji ustawień, integracji lub po prostu "API".
Informacje na temat sposobu połączenia się z API niemal w każdym przypadku znajdziemy w Dokumentacji dostępnej na stronie www w sekcji "Dokumentacja" lub sekcji dla "Developerów".
Zatem aby podłączyć się do API musimy: