API (Application Programming Interface, czyli interfejs programistyczny aplikacji) to zestaw reguł, dzięki którym jeden program może poprosić inny o dane lub wykonanie zadania. Aplikacja wysyła żądanie w ustalonym formacie, a serwer odsyła odpowiedź. Tak działa logowanie przez Google, mapa na stronie sklepu czy płatność BLIK.
Jeśli kiedykolwiek widziałeś w ustawieniach aplikacji pole „klucz API” albo w ogłoszeniu o pracę wymóg „znajomość REST API”, ten tekst jest dla ciebie. Wyjaśniamy temat bez żargonu, a na końcu pokazujemy pierwsze prawdziwe zapytanie, które możesz wysłać samodzielnie.
API co to jest? Definicja prostym językiem
API to umowa między dwoma programami. Określa, o co jeden program może poprosić drugi, w jakiej formie musi to zrobić i co dostanie w odpowiedzi. Programista nie musi wiedzieć, jak drugi system działa w środku – wystarczy, że zna „menu” dostępnych poleceń.
Słowo „interfejs” jest tu kluczowe. Interfejs użytkownika (przyciski, formularze, menu) służy człowiekowi. Interfejs programistyczny służy programom: nie ma w nim grafiki, są tylko adresy, polecenia i dane.
Analogia z kelnerem w restauracji
Najprościej wyobrazić sobie API jako kelnera:
- Ty (klient) to aplikacja, która czegoś potrzebuje, np. prognozy pogody.
- Kuchnia to serwer z danymi i logiką – tam „gotuje się” odpowiedź.
- Kelner (API) przyjmuje zamówienie, zanosi je do kuchni i przynosi danie.
- Menu to dokumentacja API – lista rzeczy, które można zamówić, i sposób, w jaki trzeba to zrobić.
Nie wchodzisz do kuchni i nie gotujesz sam. Nie musisz też wiedzieć, jak działa piec. Zamawiasz z karty, a kelner pilnuje, żeby zamówienie było zrozumiałe dla kuchni. Gdy zamówisz coś spoza menu, kelner odpowie, że tego nie ma – w świecie API to odpowiednik błędu.
Jak działa API? Żądanie i odpowiedź
Większość współczesnych API działa przez internet w modelu żądanie–odpowiedź (request–response), korzystając z protokołu HTTP – tego samego, którego używa przeglądarka do wczytywania stron. Po drugiej stronie stoi serwer, który przyjmuje zapytania i odsyła wyniki.
Każde żądanie składa się z kilku elementów:
- Endpoint – adres URL konkretnej funkcji API, np.
https://api.example.com/v1/users/42. Jedno API ma zwykle wiele endpointów (użytkownicy, zamówienia, produkty). - Metoda HTTP – mówi, co chcesz zrobić z danymi (odczytać, dodać, zmienić, usunąć).
- Nagłówki – informacje dodatkowe, np. klucz API, format danych, język.
- Treść (body) – dane wysyłane do serwera, np. treść nowego komentarza. Przy odczycie zwykle jej nie ma.
Serwer odsyła odpowiedź z kodem statusu i danymi, najczęściej w formacie JSON – lekkim, tekstowym zapisie obiektów w postaci par „klucz: wartość”, czytelnym zarówno dla człowieka, jak i programu.
Metody HTTP: GET, POST, PUT, DELETE
| Metoda | Co robi | Przykład |
|---|---|---|
| GET | Pobiera dane | Wyświetl listę produktów |
| POST | Tworzy nowy zasób | Dodaj nowe zamówienie |
| PUT | Zastępuje/aktualizuje zasób | Zmień adres dostawy w zamówieniu |
| PATCH | Zmienia część zasobu | Zmień tylko numer telefonu |
| DELETE | Usuwa zasób | Usuń komentarz |
Kody odpowiedzi – co oznaczają liczby
Kod statusu to trzycyfrowa liczba, która w skrócie mówi, jak poszło:
- 200 OK – wszystko się udało, dane są w odpowiedzi.
- 201 Created – utworzono nowy zasób (typowe po POST).
- 400 Bad Request – żądanie jest błędne, np. brakuje wymaganego pola.
- 401 Unauthorized – brak poprawnego uwierzytelnienia, np. zły lub brakujący klucz API.
- 403 Forbidden – serwer wie, kim jesteś, ale nie masz uprawnień.
- 404 Not Found – taki zasób lub endpoint nie istnieje.
- 429 Too Many Requests – przekroczono limit zapytań w danym czasie.
- 500 Internal Server Error – błąd po stronie serwera.
Zasada ogólna: kody 2xx to sukces, 4xx to błąd po stronie klienta, 5xx to problem serwera.
Rodzaje API
API dzieli się na dwa sposoby: według architektury/protokołu (jak się komunikuje) i według dostępności (kto może z niego korzystać).
REST, GraphQL, SOAP i WebSocket
REST API (często nazywane RESTful API) to dziś najpopularniejszy styl. Każdy zasób ma własny adres URL, a operacje wykonuje się standardowymi metodami HTTP. REST jest bezstanowy – każde żądanie zawiera komplet informacji potrzebnych do jego obsługi. Odpowiedzi zwykle przychodzą w JSON.
GraphQL to język zapytań opracowany w Facebooku. Zamiast wielu endpointów jest zwykle jeden, a klient sam opisuje, jakie pola chce dostać. Dzięki temu nie pobiera zbędnych danych – przydatne w aplikacjach mobilnych.
SOAP to starszy, ściśle sformalizowany protokół oparty na XML. Spotkasz go głównie w bankowości, ubezpieczeniach i systemach administracji, gdzie liczą się sztywne kontrakty i rozbudowane standardy bezpieczeństwa.
WebSocket utrzymuje stałe, dwukierunkowe połączenie. Serwer może sam wysłać dane, gdy coś się zmieni, bez czekania na pytanie. Tak działają czaty, notowania giełdowe na żywo czy gry online.
Publiczne, prywatne, partnerskie
| Typ API | Kto korzysta | Przykład |
|---|---|---|
| Publiczne (otwarte) | Każdy programista, często po rejestracji i z kluczem | API pogodowe, mapy, API modeli AI |
| Prywatne (wewnętrzne) | Tylko zespoły w jednej firmie | Komunikacja aplikacji mobilnej banku z jego serwerami |
| Partnerskie | Wybrani partnerzy biznesowi na podstawie umowy | Integracja sklepu z bramką płatności lub firmą kurierską |
| Złożone (composite) | Systemy łączące kilka wywołań w jedno | Jedno zapytanie zwraca zamówienie, klienta i status przesyłki |
Przykłady API z życia codziennego
Z API korzystasz kilkadziesiąt razy dziennie, nawet o tym nie wiedząc.
- Logowanie przez Google lub Apple. Klikasz „Zaloguj się przez Google”, a serwis przekierowuje cię do Google. Po zalogowaniu Google przekazuje serwisowi przez API potwierdzenie tożsamości (standardy OAuth 2.0 i OpenID Connect). Twoje hasło nigdy nie trafia do tej strony.
- Mapy na stronie. Mapka z dojazdem do restauracji to najczęściej osadzona usługa mapowa, np. Google Maps Platform albo OpenStreetMap, wywoływana przez API.
- Płatności online. Gdy płacisz BLIK-iem lub kartą w sklepie internetowym, sklep wysyła przez API operatora płatności (np. PayU, Przelewy24, Tpay) dane transakcji, a potem odbiera informację, czy płatność się udała.
- Pogoda w telefonie. Aplikacja pogodowa nie ma własnych stacji meteo – pobiera prognozy z serwisów udostępniających dane przez API.
- ChatGPT i inne modele AI. OpenAI, Anthropic czy Google udostępniają swoje modele językowe przez API. Firmy wbudowują je we własne aplikacje, np. chatboty obsługi klienta, i płacą za liczbę przetworzonych tokenów.
- Śledzenie przesyłki. Status paczki w sklepie internetowym jest pobierany automatycznie z API firmy kurierskiej.
Klucz API i bezpieczeństwo
Klucz API (API key) to długi, unikalny ciąg znaków, który identyfikuje aplikację wysyłającą zapytania. Dostawca dzięki niemu wie, kto korzysta z usługi, może naliczać opłaty i pilnować limitów. Klucz przesyła się zwykle w nagłówku żądania, np. Authorization: Bearer <klucz>.
Klucz API działa jak hasło – kto go ma, może korzystać z usługi na twój koszt. Przy płatnych API, np. modelach AI czy mapach, wyciek klucza potrafi skończyć się wysokim rachunkiem.
Najczęstsze błędy przy kluczach API
- Wklejanie klucza do kodu frontendu (JavaScript w przeglądarce, aplikacja mobilna) – każdy może go podejrzeć.
- Publikowanie klucza w repozytorium, np. na GitHubie. Boty skanują publiczne repozytoria w poszukiwaniu kluczy.
- Jeden klucz do wszystkiego bez ograniczeń. Lepiej tworzyć osobne klucze dla projektów i ustawiać limity wydatków oraz zakres uprawnień.
- Brak rotacji – klucze warto okresowo wymieniać, a po podejrzeniu wycieku natychmiast unieważnić.
Dobra praktyka to trzymanie kluczy w zmiennych środowiskowych lub menedżerze sekretów i wywoływanie płatnych API wyłącznie z własnego serwera. Przy kontach u dostawców API włącz też uwierzytelnianie dwuskładnikowe.
Przykład zapytania do API: curl i odpowiedź JSON
Zobaczmy API w praktyce. Skorzystamy z darmowego API pogodowego Open-Meteo, które nie wymaga rejestracji ani klucza. Narzędzie curl jest wbudowane w Windows 10/11, macOS i Linuksa – wystarczy otworzyć terminal (w Windows: wiersz polecenia lub PowerShell).
curl "https://api.open-meteo.com/v1/forecast?latitude=52.23&longitude=21.01¤t=temperature_2m,wind_speed_10m"
Co tu się dzieje:
https://api.open-meteo.com/v1/forecastto endpoint prognozy,latitudeilongitudeto współrzędne (tu: Warszawa),current=temperature_2m,wind_speed_10mmówi, które dane chcemy dostać,- curl domyślnie wysyła metodę GET.
Serwer odpowie danymi w JSON (fragment, wartości przykładowe):
{
"latitude": 52.23,
"longitude": 21.01,
"timezone": "GMT",
"current_units": {
"temperature_2m": "°C",
"wind_speed_10m": "km/h"
},
"current": {
"time": "2026-11-08T12:00",
"temperature_2m": 7.4,
"wind_speed_10m": 14.2
}
}
Aplikacja pogodowa robi dokładnie to samo – tylko zamiast pokazywać ci surowy JSON, odczytuje wartość temperature_2m i wyświetla „7°C” z ikonką chmurki.
API a SDK – czym się różnią?
API to sam interfejs: lista endpointów i zasad komunikacji. SDK (Software Development Kit) to gotowy zestaw narzędzi dla programisty – biblioteki, przykłady i dokumentacja – który ułatwia korzystanie z API w konkretnym języku programowania.
| API | SDK | |
|---|---|---|
| Czym jest | Interfejs (zasady komunikacji) | Paczka narzędzi i bibliotek |
| Co dostajesz | Adresy, metody, format danych | Gotowe funkcje w Pythonie, JavaScripcie, Javie itd. |
| Przykład | POST /v1/payments |
client.payments.create(amount=100) |
| Relacja | Może istnieć bez SDK | Zwykle „opakowuje” API |
Zamiast samodzielnie składać żądania HTTP, nagłówki i obsługę błędów, wywołujesz jedną funkcję z SDK. Pod spodem i tak leci zwykłe zapytanie do API. Podobną rolę w budowaniu aplikacji pełni framework – dostarcza gotowe elementy, żeby nie pisać wszystkiego od zera.
Jak zacząć pracę z API?
Jeśli chcesz się nauczyć korzystać z API, wystarczy kilka kroków:
- Wybierz proste, darmowe API – np. Open-Meteo (pogoda), JSONPlaceholder (testowe dane) albo API NBP z kursami walut.
- Przeczytaj dokumentację. Szukaj sekcji „Getting started”, listy endpointów, wymaganych parametrów i opisu uwierzytelniania. Dokumentacja to „menu” z naszej analogii.
- Wyślij pierwsze zapytanie w przeglądarce lub curl. Zapytania GET bez klucza możesz wkleić w pasek adresu.
- Zainstaluj Postmana (lub darmowe alternatywy: Insomnia, Bruno, rozszerzenie Thunder Client w VS Code). Pozwalają wysyłać zapytania dowolną metodą, dodawać nagłówki i zapisywać kolekcje bez pisania kodu.
- Przenieś zapytanie do kodu. W Pythonie służy do tego biblioteka
requests, w JavaScripcie funkcjafetch(). - Obsłuż błędy. Sprawdzaj kod statusu i reaguj na 401, 404 czy 429, zamiast zakładać, że zawsze dostaniesz 200.
Praca z API to jedna z podstawowych umiejętności w branży IT – przydaje się zarówno backendowcom, jak i frontendowcom, testerom czy analitykom. Jeśli dopiero planujesz wejście do zawodu, zajrzyj do poradnika jak zostać programistą i od czego zacząć. Warto też rozumieć, czym jest kod źródłowy – to w nim programiści opisują, jak API ma działać.
FAQ
Co to jest API w prostych słowach?
API to „pośrednik”, który pozwala dwóm programom rozmawiać ze sobą według ustalonych reguł. Jedna aplikacja wysyła prośbę, np. o prognozę pogody, a druga odsyła dane. Działa to jak kelner, który przenosi zamówienia między klientem a kuchnią.
Co to jest REST API?
REST API to najpopularniejszy styl budowania API, w którym każdy zasób (np. użytkownik, produkt) ma własny adres URL. Operacje wykonuje się standardowymi metodami HTTP: GET, POST, PUT, DELETE. Dane najczęściej przesyła się w formacie JSON.
Co to jest klucz API i gdzie go znaleźć?
Klucz API to unikalny ciąg znaków identyfikujący twoją aplikację u dostawcy usługi. Generuje się go w panelu dewelopera danego serwisu (zwykle w sekcji „API keys” lub „Credentials”) po założeniu konta. Traktuj go jak hasło i nie publikuj go w kodzie dostępnym publicznie.
Czy korzystanie z API jest płatne?
To zależy od dostawcy. Wiele API ma darmowy pakiet z limitem zapytań, a powyżej limitu nalicza opłaty – tak działają m.in. mapy czy modele AI. Są też API całkowicie darmowe, np. udostępniane przez instytucje publiczne.
Czym różni się API od strony internetowej?
Strona internetowa jest przeznaczona dla człowieka – ma grafikę, przyciski i tekst. API zwraca surowe dane (zwykle JSON), które odczytuje program. Często ten sam serwis ma oba elementy: stronę dla użytkowników i API dla aplikacji.
Czy muszę umieć programować, żeby korzystać z API?
Do prostych zapytań nie – wystarczy przeglądarka, curl albo Postman. Do integracji API z własną aplikacją potrzebna jest podstawowa znajomość języka programowania, np. Pythona lub JavaScriptu. Istnieją też narzędzia no-code (np. Make, Zapier), które łączą usługi przez API bez pisania kodu.
Źródła
- MDN Web Docs – HTTP request methods i HTTP response status codes: https://developer.mozilla.org/en-US/docs/Web/HTTP
- Open-Meteo – dokumentacja API prognozy: https://open-meteo.com/en/docs
- GraphQL – oficjalna dokumentacja: https://graphql.org/learn/
- OAuth 2.0 (RFC 6749): https://datatracker.ietf.org/doc/html/rfc6749
- Postman – dokumentacja: https://learning.postman.com/
- Orange Polska, poradnik dla firm – Application Programming Interface: https://www.orange.pl/poradnik-dla-firm/cloud/application-programming-interface/

