IT Akademia
Panel / ๐Ÿ’ป Programowanie i skrypty โ€” Git, Python, SQL, API / Lekcja 5/9

REST API i JSON: jak systemy gadaja ze soba

โฑ 18 min ยท poziom 3/5
๐Ÿ“œ Wprowadzenie โ€” od historii do szczegolu 2000-dzis

Kiedys systemy wymienialy dane ciezkimi, sztywnymi protokolami (SOAP, XML). W 2000 Roy Fielding w swojej rozprawie doktorskiej opisal REST โ€” prosty styl oparty na tym, co juz robi kazda przegladarka: adresy URL i metody HTTP (GET, POST, PUT, DELETE). W parze z lekkim formatem JSON stal sie jezykiem, ktorym dzis gadaja ze soba niemal wszystkie aplikacje w internecie.

Kazda integracja, webhook i automatyzacja opiera sie na API. Od historii 'ciezki SOAP kontra lekki REST' zejdziemy do konkretu: czym jest REST i metody HTTP, jak czytac i budowac JSON, kody odpowiedzi (200, 404, 500), naglowki i uwierzytelnianie (tokeny). To umiejetnosc, dzieki ktorej polaczysz Jire z Teams albo napiszesz skrypt ciagnacy dane z dowolnego systemu.

Po tej lekcji bedziesz umiec:

Integracje to codziennosc: Jira gada z Slackiem, monitoring z ntfy, skrypt z Entra. Ich wspolny jezyk to REST API i JSON. Kto to rozumie, ten spina systemy zamiast recznie przeklikiwac te same rzeczy.

REST โ€” zasoby i metody HTTP

W REST wszystko jest **zasobem** pod adresem (**endpoint**), np. `/api/users/42`. Na zasobie wykonujesz **metody HTTP** โ€” to CRUD po sieci.

MetodaZnaczenieCRUD
GETPobierz zasobRead
POSTUtworz nowy zasobCreate
PUT / PATCHZamien / zaktualizujUpdate
DELETEUsun zasobDelete

Kody statusu HTTP

Rozroznienie 401 vs 403 to klasyk: 401 = 'nie wiem, kim jestes' (AuthN), 403 = 'wiem, kim jestes, ale Ci nie wolno' (AuthZ). Ta sama para co w module IAM.

JSON โ€” format wymiany

{
  "id": 42,
  "login": "jkowalski",
  "aktywny": true,
  "role": ["user", "admin"],
  "dzial": { "id": 3, "nazwa": "IT" }
}

Uwierzytelnianie i webhooki

# przyklad wywolania z tokenem (Bearer)
GET /api/issues?status=open
Authorization: Bearer eyJhbGciOi...
Accept: application/json

**Webhook** odwraca model: zamiast Ty pytasz API co chwile (**polling**), to serwer SAM wysyla Ci POST, gdy cos sie stanie (np. nowy ticket). Efektywniejsze i szybsze niz ciagle odpytywanie.

๐ŸŽฏ Cwiczenia podsumowujace

Gotowe? Oznacz lekcje jako ukonczona
Postep zapisuje sie automatycznie.
โ† Poprzednia Nastepna โ†’