Postman – kompletny przewodnik: testowanie API, automatyzacja i zastosowania w marketingu

Postman to jedno z najpopularniejszych narzędzi służących do pracy z API oraz testowania ich działania. Mówiąc najprościej, jest to aplikacja (dostępna na komputery i w wersji przeglądarkowej) umożliwiająca wysyłanie różnego rodzaju żądań HTTP (np. GET, POST, PUT, DELETE) do wybranego API i obserwowanie otrzymywanych odpowiedzi. Dzięki przyjaznemu interfejsowi graficznemu Postman ułatwia nawet mniej doświadczonym użytkownikom wysyłanie zapytań do serwera bez konieczności pisania kodu czy używania skomplikowanych narzędzi deweloperskich.

Początkowo Postman funkcjonował jako wtyczka do przeglądarki Chrome, jednak z czasem przekształcił się w samodzielną, rozbudowaną aplikację. Dziś stanowi platformę do rozwoju API, oferując szereg funkcji wykraczających poza wysyłanie pojedynczych zapytań – można w nim automatyzować testy, tworzyć dokumentację do API, symulować serwery (mocki) czy współpracować w zespole nad zestawami zapytań.

Dlaczego warto go używać?

Postman znacząco usprawnia i upraszcza proces testowania API w porównaniu do manualnego wysyłania zapytań np. przez przeglądarkę czy narzędzia typu curl. Oto kilka kluczowych zalet korzystania z Postmana:

  • Intuicyjny interfejs – Pozwala szybko skonfigurować zapytanie HTTP (wybrać metodę, URL, nagłówki, ciało żądania itp.) i od razu zobaczyć odpowiedź, bez potrzeby pisania nawet linijki kodu.
  • Oszczędność czasu – Czynności, które normalnie wymagałyby napisania skryptu lub programu (np. przetestowanie kilkunastu endpointów API), można wykonać w ciągu minut za pomocą kilku kliknięć.
  • Organizacja pracy – Możliwość grupowania zapytań w kolekcje, zapisywania ich na później, dodawania notatek czy dokumentacji sprawia, że łatwiej zarządzać rozbudowanymi testami API.
  • Automatyczne testy i skrypty – Postman pozwala pisać skrypty testowe, które automatycznie sprawdzą odpowiedź (np. czy kod statusu to 200, czy ciało zawiera oczekiwane dane). Umożliwia to budowanie całych scenariuszy testowych i wychwytywanie błędów szybciej.
  • Współpraca zespołowa – W ramach zespołu można dzielić się kolekcjami zapytań, wspólnie rozwijać testy i zapewniać, że wszyscy korzystają z aktualnej wersji. Postman oferuje funkcje synchronizacji w chmurze i współdzielenia pracy.
  • Wsparcie dla wielu technologii – Choć najczęściej używa się go do REST API, Postman obsługuje również zapytania GraphQL, gRPC, SOAP, a także WebSockets. Dzięki temu jest uniwersalnym narzędziem do różnych rodzajów interfejsów programistycznych.

Krótko mówiąc, warto używać Postmana, ponieważ oszczędza czas, zmniejsza ryzyko błędów i daje bogaty zestaw funkcji do pracy z API na każdym etapie – od eksploracji i testowania po wdrożenie i monitorowanie.

Dla kogo jest to narzędzie?

Postman znalazł zastosowanie wśród wielu specjalistów z branży IT (i nie tylko). Najczęściej sięgają po niego:

  • Programiści backend – podczas tworzenia i debugowania własnych API. Mogą łatwo testować endpointy, wysyłać różne kombinacje danych i upewnić się, że serwer zwraca poprawne odpowiedzi.
  • Programiści frontend – do sprawdzania, jak działają zewnętrzne API, z których korzysta front-end, lub do testowania własnego backendu zanim napisany zostanie kod integrujący. To pomaga lepiej zrozumieć dane zwracane przez serwer i przygotować się na ich obsługę w aplikacji.
  • Testerzy i QA (Quality Assurance) – Postman jest świetnym narzędziem do testów API w procesie zapewniania jakości oprogramowania. Tester może przygotować zestaw przypadków testowych w Postmanie i wykonywać je po każdej zmianie w API, by wychwycić regresje lub błędy.
  • DevOps i administratorzy – do monitorowania punktów końcowych (endpointów) i sprawdzania ich dostępności czy wydajności. Automatyczne kolekcje testów mogą być np. włączone do pipeline CI/CD, żeby automatycznie testować API po wdrożeniu na serwer.
  • Początkujący programiści i entuzjaści IT – uczący się, jak działają API. Postman jest często wykorzystywany w kursach i samouczkach jako pierwsze narzędzie do eksperymentów z własnymi zapytaniami HTTP.
  • Specjaliści spoza IT (np. marketing) – osoby, które nie są programistami, ale chcą skorzystać z danych udostępnianych przez API (np. pobrać raport z narzędzia marketingowego). Dzięki Postmanowi mogą bez głębokiej wiedzy programistycznej samodzielnie wykonać zapytanie do API i uzyskać potrzebne informacje.

Jak widać, Postman może być przydatny zarówno dla osób technicznych, jak i tych, którzy dopiero zaczynają przygodę z API lub wykorzystują dane z API w innych obszarach (np. w analizie marketingowej).

Jak używać Postmana do testowania API?

Instalacja i pierwsze kroki w Postmanie

Rozpoczęcie pracy z Postmanem jest proste. Narzędzie to jest dostępne za darmo – wystarczy pobrać instalator ze strony producenta (Windows, macOS lub Linux) i zainstalować aplikację na swoim komputerze. Istnieje także webowa wersja Postmana dostępna z poziomu przeglądarki (wymaga zainstalowania tzw. Postman Agent), jednak w tym poradniku skupimy się na klasycznej aplikacji desktopowej, która jest najczęściej używana.

Po uruchomieniu Postmana możemy założyć bezpłatne konto, aby móc synchronizować swoje zapytania w chmurze (co przydaje się przy korzystaniu na wielu urządzeniach lub pracy zespołowej). Nie jest to jednak konieczne do podstawowego użytkowania – można równie dobrze kliknąć „Skip signing in” i korzystać z Postmana lokalnie.

Interfejs Postmana składa się z kilku głównych obszarów:

  • Pole adresu URL – miejsce, w którym wpisujemy adres endpointu API, z którym chcemy się połączyć.
  • Lista metod HTTP – rozwijane menu obok pola URL, pozwalające wybrać rodzaj żądania (GET, POST, PUT, DELETE, itd.).
  • Przyciski i zakładki konfiguracyjne – poniżej pola URL znajdują się zakładki do konfiguracji żądania: Params (parametry zapytania), Authorization (autoryzacja), Headers (nagłówki), Body (ciało żądania) itp. Tutaj ustawiamy wszystkie szczegóły zapytania.
  • Przycisk „Send” – po prawej stronie pola URL. Kliknięcie go spowoduje wysłanie zdefiniowanego żądania do serwera.
  • Okno odpowiedzi – dolna część okna Postmana, w której wyświetli się rezultat żądania: kod statusu HTTP, nagłówki odpowiedzi, czas wykonania oraz ciało (treść) odpowiedzi, jeśli takowa zostanie zwrócona.

Na początek warto spróbować wykonać proste zapytanie, aby zobaczyć jak Postman działa w praktyce. Przykładowo możemy użyć publicznego API JSONPlaceholder, które udostępnia testowe dane. W polu URL wpiszmy np. adres https://jsonplaceholder.typicode.com/posts/1, wybierzmy metodę GET i kliknijmy Send. Postman nawiąże połączenie z serwerem i w oknie odpowiedzi powinniśmy zobaczyć odpowiedź z przykładowymi danymi (w tym przypadku będzie to obiekt JSON reprezentujący post o ID 1). Ukaże się również zielony kod statusu 200 OK, informujący o sukcesie, oraz czas odpowiedzi i ewentualne nagłówki zwrócone przez serwer.

Gratulacje – właśnie wykonałeś swoje pierwsze zapytanie API za pomocą Postmana! Teraz przyjrzyjmy się, jak można korzystać z innych metod i funkcji, by w pełni wykorzystać to narzędzie.

Wysyłanie żądań GET, POST, PUT i DELETE

W rzeczywistych projektach REST API najczęściej będziesz korzystać z czterech podstawowych metod HTTP: GET, POST, PUT (lub PATCH) oraz DELETE. Każdą z nich można bez problemu przetestować w Postmanie.

  • GET – służy do pobierania danych z serwera. Tego typu żądania nie posiadają ciała (Body), a wszelkie dane zapytania (np. filtracja czy paginacja wyników) są zazwyczaj przekazywane w parametrach URL lub nagłówkach. W Postmanie użycie metody GET sprowadza się do wybrania „GET” z listy metod i podania odpowiedniego URL. Przykładowo, aby pobrać listę postów na blogu z przykładowego API, możemy wykonać GET https://jsonplaceholder.typicode.com/posts. Po wysłaniu zapytania aplikacja wyświetli nam listę postów w formacie JSON.
  • POST – służy do tworzenia nowych zasobów (np. dodawania nowego użytkownika czy wpisu). Żądanie POST zazwyczaj wymaga przesłania ciała (danych), np. w formacie JSON, które serwer wykorzysta do utworzenia nowego obiektu. Aby wykonać POST w Postmanie, wybierz metodę POST, wpisz URL endpointu (np. https://jsonplaceholder.typicode.com/posts aby dodać nowy wpis) i przejdź do zakładki Body. Wybierz opcję „raw” i format JSON, a następnie wprowadź dane w postaci JSON, np.:
{
"title": "Nowy post",
"body": "Treść wpisu",
"userId": 1
}

Po kliknięciu Send serwer testowy zwróci nam w odpowiedzi nowo utworzony obiekt (z nadanym ID i podanymi przez nas polami) oraz status 201 Created, potwierdzający pomyślne utworzenie zasobu.

  • PUT – służy do aktualizacji istniejącego zasobu (np. edycji istniejącego rekordu). Zazwyczaj żądanie PUT wysyła się na konkretny identyfikator zasobu i przesyła zaktualizowane dane w ciele żądania (podobnie jak przy POST). Jeżeli np. chcielibyśmy zmodyfikować post o ID 1, wysyłamy PUT na adres https://jsonplaceholder.typicode.com/posts/1 z uaktualnionym obiektem JSON w Body. Jeśli operacja się powiedzie, serwer może zwrócić zaktualizowany obiekt i status 200 OK lub 204 No Content (bez treści).
  • DELETE – służy do usunięcia istniejącego zasobu. Wykonując żądanie DELETE w Postmanie, wystarczy wybrać metodę DELETE i podać URL konkretnego obiektu, który chcemy skasować (np. https://jsonplaceholder.typicode.com/posts/1 aby usunąć post o ID 1). Po wysłaniu takiego żądania serwer zwróci zazwyczaj status 200 OK lub 204 No Content, co oznacza, że zasób został pomyślnie usunięty. Ciało odpowiedzi może być puste.

Warto pamiętać, że nie wszystkie API działają dokładnie tak samo. Niektóre mogą wymagać dodatkowych nagłówków lub specyficznych formatów danych. Jednak Postman daje nam swobodę w pełnej konfiguracji żądania, więc bez względu na to, czy musimy wysłać proste zapytanie GET, czy złożone POST z wieloma parametrami i ciałem – narzędzie to na to pozwoli.

Praca z nagłówkami, parametrami i autoryzacją

Podczas testowania API często trzeba uwzględnić dodatkowe elementy zapytań, takie jak nagłówki HTTP, parametry (zarówno zapytania URL, jak i parametry ścieżki) czy też mechanizmy autoryzacji. Postman ułatwia zarządzanie tymi elementami poprzez dedykowane sekcje interfejsu dla każdego z nich.

Nagłówki HTTP: W zakładce Headers możemy dodawać dowolne nagłówki do naszego żądania. Wiele nagłówków Postman ustawia automatycznie (np. Content-Type: application/json pojawi się sam, gdy wybierzemy typ Body „JSON”), ale możemy też dodawać własne. Przykładowo, jeżeli API wymaga klucza dostępu przesyłanego w nagłówku (np. X-API-Key), możemy go tam ręcznie wpisać. Nagłówki służą do przekazywania meta-informacji o zapytaniu (np. typu danych, autoryzacji, formatu akceptowanej odpowiedzi itp.), więc prawidłowe ich ustawienie bywa kluczowe dla sukcesu wywołania.

Parametry zapytania: Jeśli musimy do żądania GET dołączyć parametry (np. filtry, zakres dat, paginację), możemy to zrobić na dwa sposoby. Pierwszy to bezpośrednie dopisanie ich do URL po znaku ? (np. https://api.example.com/users?active=true&limit=50). Bardziej eleganckim rozwiązaniem jest jednak użycie zakładki Params – wprowadzamy tam nazwę i wartość parametru, a Postman sam dodaje je do URL (oraz odpowiednio zakoduje znaki specjalne). Parametry można również wykorzystywać w ścieżkach URL (tzw. path variables). W Postmanie można zapisać URL z parametrem ścieżki jako zmienną w klamrach (np. /users/:id), a następnie zdefiniować wartość tej zmiennej (na poziomie kolekcji lub środowiska). Ułatwia to ponowne używanie tego samego zapytania dla wielu ID bez ręcznego edytowania URL za każdym razem.

Autoryzacja: Większość realnych API wymaga jakiejś formy uwierzytelnienia lub autoryzacji, zanim pozwoli na pobranie czy modyfikację danych. Może to być np. prosty API Key, token Bearer (np. w standardzie OAuth 2.0), Basic Auth (login i hasło zakodowane w nagłówku) czy bardziej złożone mechanizmy OAuth. Postman ułatwia pracę z autoryzacją dzięki zakładce Authorization. Wybierając odpowiedni typ autoryzacji z listy (np. „API Key”, „Bearer Token”, „Basic Auth”, „OAuth 2.0” itp.), Postman prezentuje pola do wprowadzenia wymaganych danych (np. wartości tokenu, klucza, sekretnych identyfikatorów aplikacji). Następnie narzędzie automatycznie dodaje do żądania odpowiedni nagłówek lub parametry autoryzacyjne. Dla przykładu: jeśli wybierzemy „Bearer Token” i wprowadzimy token dostępu, Postman dołączy nagłówek Authorization: Bearer <twój_token>.

Warto dodać, że Postman obsługuje również proces uzyskiwania tokenów OAuth 2.0 – możemy skonfigurować aplikację, wykonać w Postmanie tzw. „get new access token”, a narzędzie przeprowadzi nas przez logowanie do usługi i pozyska token, który następnie można użyć w dalszych zapytaniach. To wszystko sprawia, że nawet zabezpieczone API są łatwo dostępne do testów bez dodatkowego kodowania mechanizmów uwierzytelnienia.

Tworzenie kolekcji żądań i automatyzacja testów

Czym są kolekcje i jak je tworzyć?

Podczas pracy nad większym API, szybko może się okazać, że liczba zapytań, które musisz przetestować, jest znaczna. Tutaj z pomocą przychodzą kolekcje (ang. collections) w Postmanie. Kolekcja to nic innego jak zestaw żądań pogrupowanych pod jedną nazwą (coś w rodzaju folderu na zapytania). Dzięki kolekcjom można uporządkować testy według określonego klucza – na przykład tworzymy osobne kolekcje dla różnych projektów, mikroserwisów albo modułów aplikacji.

Aby utworzyć nową kolekcję w Postmanie, wykonaj następujące kroki:

  1. Kliknij przycisk New (lub File -> New) i wybierz opcję Collection. Możesz też skorzystać z bocznego panelu – obok napisu „Collections” często widoczny jest przycisk + pozwalający dodać nową kolekcję.
  2. Nadaj kolekcji nazwę opisującą jej zawartość (np. Blog API Tests lub MojaAplikacja – użytkownicy). Opcjonalnie możesz dodać opis kolekcji, w którym wyjaśnisz, czego dotyczą zawarte w niej zapytania.
  3. Teraz możesz dodawać żądania do kolekcji. Jeśli masz już utworzone zapytanie (np. testowałeś coś wcześniej), kliknij przycisk Save obok nazwy zapytania, a następnie wybierz utworzoną kolekcję jako miejsce zapisania. Możesz też kliknąć prawym przyciskiem na kolekcję w panelu bocznym i wybrać Add Request, by stworzyć nowe żądanie wewnątrz kolekcji.

Po dodaniu kilku zapytań do kolekcji zyskujesz pewne dodatkowe możliwości:

  • Możesz jednym kliknięciem uruchomić całą kolekcję (lub folder w jej obrębie) w tzw. Collection Runnerze, czyli narzędziu Postmana do wykonywania serii testów automatycznie.
  • Możesz definiować zmienne kolekcji, które będą dostępne dla wszystkich zawartych w niej zapytań (np. wspólny adres bazowy API, jeśli chcesz łatwo zmienić środowisko z testowego na produkcyjne).
  • Kolekcję łatwo udostępnisz innym – cały pakiet zapytań można wyeksportować do pliku lub podzielić się nim w ramach zespołu (o czym więcej powiemy w sekcji o współpracy).

Kolekcje stanowią fundament bardziej zaawansowanej pracy w Postmanie, ponieważ pozwalają na automatyzację i odtwarzanie całych scenariuszy testowych w sposób powtarzalny.

Skrypty pre-request i testy automatyczne w Postmanie

Jedną z najpotężniejszych funkcji Postmana jest możliwość dodawania własnego kodu (w języku JavaScript) wykonywanego przed lub po wysłaniu żądania. Umożliwiają to dwie sekcje:

  • Pre-request Script – skrypty wykonywane tuż przed wysłaniem żądania.
  • Tests – skrypty uruchamiane po otrzymaniu odpowiedzi.

Skrypty pre-request służą najczęściej do przygotowania pewnych danych potrzebnych zapytaniu. Na przykład, możemy chcieć wygenerować znacznik czasu (timestamp) i dołączyć go jako parametr do żądania lub nagłówka – zrobimy to właśnie w skrypcie pre-request, ustawiając wartość w zmiennej, którą następnie użyjemy w zapytaniu. Innym przykładem może być pozyskanie tokenu uwierzytelniającego przed właściwym testem: możemy tu wykonać dodatkowe zapytanie (używając pm.sendRequest w kodzie) do endpointu logowania, pobrać token i zapisać go, by główne żądanie użyło go w nagłówku Authorization.

Skrypty testowe (sekcja Tests) pozwalają nam automatycznie zweryfikować, czy odpowiedź API jest zgodna z oczekiwaniami. Wykorzystujemy tutaj wbudowany obiekt pm (Postman Sandbox), który dostarcza m.in.:

  • pm.response – dane otrzymanej odpowiedzi (status, body itp.),
  • pm.expect / pm.test – funkcje do asercji (sprawdzania warunków),
  • pm.environment / pm.globals – możliwość odczytu i zapisu zmiennych środowiskowych lub globalnych.

Przykładowo, aby sprawdzić czy serwer zwrócił status 200 OK, możemy dodać taki oto test:

j// Skrypt testowy: sprawdzenie kodu statusu odpowiedzi
pm.test("Kod statusu to 200", function () {
pm.response.to.have.status(200);
});

Możemy też weryfikować zawartość ciała odpowiedzi. Zakładając, że serwer zwrócił JSON, odczytamy go metodą pm.response.json(), a następnie:

const data = pm.response.json();
pm.test("Pole 'id' jest zgodne z oczekiwaniem", function () {
pm.expect(data.id).to.eql(1);
});

Powyższy przykład zakłada, że oczekujemy w polu id wartości 1 i test to potwierdzi. Postman posiada wiele wbudowanych snippetów (gotowych fragmentów kodu) ułatwiających tworzenie testów – wystarczy skorzystać z menu po prawej stronie okna Tests i wybrać np. „Status code: 200”, żeby automatycznie wstawić szablon testu jak powyżej.

Skrypty testowe mogą również służyć do zapisywania danych z odpowiedzi, które przydadzą się w kolejnych zapytaniach. Na przykład, po udanym wywołaniu endpointu tworzenia użytkownika (POST /users) możemy w teście zapisać zwrócone userId do zmiennej środowiskowej, by następnie użyć jej w następnym zapytaniu (np. GET /users/{userId}). Takie łańcuchowe testy pozwalają symulować rzeczywiste scenariusze użytkowania API.

Generowanie raportów i analizowanie odpowiedzi API

Po wykonaniu zapytania Postman wyświetla wszelkie informacje zwrotne z serwera. W górnej części okna odpowiedzi zobaczysz kod statusu (np. 200, 404, 500), czas odpowiedzi oraz rozmiar danych. Niżej znajduje się ciało odpowiedzi – jeśli jest to format JSON lub XML, Postman automatycznie sformatuje go (kolorując składnię i umożliwiając zwijanie/rozwijanie zagnieżdżonych struktur), co ułatwia analizę. Dostępny jest również widok raw (surowy tekst) oraz preview (podgląd np. dla HTML-a). W razie potrzeby możemy skopiować ciało odpowiedzi lub zapisać je do pliku bezpośrednio z poziomu interfejsu Postmana.

Jeśli zdefiniowaliśmy testy automatyczne dla zapytania, ich wyniki pojawiają się w zakładce Test Results (obok Body, Headers itp.). Każdy test wyświetli informację o powodzeniu (zielony znacznik) lub niepowodzeniu (czerwony komunikat błędu wraz z oczekiwaną i otrzymaną wartością). Dzięki temu od razu wiemy, czy dany warunek został spełniony przez odpowiedź API. W przypadku niepowodzenia testu, możemy przejść do szczegółów błędu i przeanalizować dlaczego odpowiedź nie spełnia oczekiwań (np. błędny kod statusu lub brak pola w JSON).

Dla bardziej zaawansowanych scenariuszy testowania warto skorzystać z Collection Runnera, który pozwala uruchomić wiele zapytań (całą kolekcję lub wybrane foldery/znaczniki) za jednym razem. Po wybraniu kolekcji i środowiska (environment) oraz opcjonalnie liczby iteracji czy pliku z danymi (co umożliwia testy data-driven, czyli powtarzane z różnymi zestawami danych), uruchamiamy testy. Postman będzie wykonywał zapytanie po zapytaniu zgodnie z ustaloną kolejnością, a następnie przedstawi zbiorczy raport: ile testów przeszło pomyślnie, ile zakończyło się błędem i które to były. Takie raporty możemy przejrzeć bezpośrednio w oknie Postmana, rozszerzając poszczególne pozycje, by zobaczyć szczegóły (np. ciało odpowiedzi danego kroku testowego).

Jeśli potrzebujemy zautomatyzować generowanie raportów (np. w ramach procesu CI/CD lub regularnego raportowania), możemy sięgnąć po narzędzie Newman. Newman to uruchamiane z linii poleceń narzędzie (CLI) pozwalające wykonywać kolekcje Postmana poza samą aplikacją. Dzięki niemu możemy np. wywołać testy Postmana na serwerze lub w pipeline CI i zapisać wyniki do pliku. Newman obsługuje różne formaty raportów (np. JUnit, HTML) poprzez tzw. reportery. Przykładowo, możemy wygenerować raport w formacie HTML zawierający podsumowanie wszystkich testów i ich wyniki, co łatwo udostępnić współpracownikom czy zachować jako dokumentację testów regresyjnych.

W trakcie analizowania odpowiedzi i testów nie zapominajmy, że Postman oferuje też Postman Console (otwierane skrótem Ctrl+Alt+C lub z menu View -> Show Postman Console). W konsoli tej zobaczymy dokładnie jakie zapytanie zostało wysłane (nagłówki, parametry, adres URL, itp.) oraz wszelkie logi z naszych skryptów (np. z console.log). Jest to nieoceniona pomoc przy debugowaniu, gdy coś nie działa i chcemy zajrzeć „za kulisy” wysyłanych zapytań.

Postman w marketingu – jak może pomóc?

Analiza API platform reklamowych (np. Facebook Ads, Google Ads)

W dzisiejszych czasach działy marketingu coraz częściej korzystają z różnych platform reklamowych i analitycznych, które udostępniają własne API. Przykładowo, Facebook Ads posiada API (część Graph API Facebooka) pozwalające na pobieranie informacji o kampaniach reklamowych, ich zasięgach, kosztach itp., a Google Ads API umożliwia zarządzanie kampaniami Google Ads i pobieranie szczegółowych statystyk. Również narzędzia takie jak Twitter Ads, LinkedIn Ads czy inne platformy marketingowe oferują API dla zaawansowanych użytkowników.

Dlaczego to istotne dla marketerów? Otóż API daje dostęp do danych często bardziej szczegółowych lub łatwiej przetwarzalnych niż standardowe eksporty z interfejsów webowych. Za pomocą zapytań API można np. pobrać surowe dane o wynikach kampanii i następnie samodzielnie je przeanalizować lub zasilić własne dashboardy i raporty.

Postman może być dla marketingu bardzo pomocnym narzędziem do eksploracji i wykorzystania tych API, nawet jeśli osoba obsługująca nie jest programistą. Przykładowe zastosowania:

  • Marketer może sprawdzić działanie Facebook Marketing API: Mając token dostępu do Graph API (który uzyskuje się przez Facebook Developer lub menedżer firmy), można w Postmanie wywołać endpoint np. /v15.0/<AD_ACCOUNT_ID>/insights z odpowiednimi parametrami (np. daty, metryki). Postman wyświetli w odpowiedzi dokładne dane dotyczące wyników kampanii (liczbę wyświetleń, kliknięć, koszty itd.) w formacie JSON. Takie dane można następnie wyeksportować lub zapisać i wykorzystać w raportach.
  • Podobnie, dla Google Ads API – po przeprowadzeniu autoryzacji OAuth i uzyskaniu tokenu, możemy w Postmanie wywoływać metody Google Ads (np. odczytać listę kampanii, sprawdzić budżety, wyniki słów kluczowych itp.). Choć Google Ads API jest nieco bardziej złożone (wymaga m.in. identyfikatorów developer token, client ID/secret i używa specyficznego formatowania zapytań), to mając te dane konfiguracyjne, Postman pozwoli na wysyłanie zapytań RESTowych do odpowiednich endpointów Google Ads.
  • Inne platformy, jak np. Google Analytics, YouTube Data API, Twitter API – wszystkie one mogą być testowane i wykorzystywane przez Postmana. Jeżeli np. chcesz pobrać dane z Google Analytics o ruchu na stronie, możesz wywołać w Postmanie endpoint raportowy GA (po uzyskaniu klucza lub tokenu dostępu) i otrzymać dane w formie JSON, zamiast ręcznie eksportować raporty z interfejsu.

Wykorzystanie Postmana w tych scenariuszach ma kilka zalet: pozwala szybko zweryfikować, czy dobrze rozumiemy dokumentację API (widzimy od razu, jakich parametrów brakuje lub czy format zapytania jest poprawny), daje podgląd surowych danych (bez nakładki interfejsu użytkownika) oraz umożliwia łatwe eksperymenty z różnymi parametrami (np. testowanie różnych zakresów dat, filtrów itp.). Dla osób zajmujących się analizą marketingową, możliwość samodzielnego pobrania szczegółowych danych z API może być bardzo cenna, szczególnie gdy potrzebne są niestandardowe przekroje danych, których nie zapewnia standardowy panel.

Automatyzacja raportowania i pobierania danych marketingowych

Skoro wiemy już, że poprzez Postmana możemy dostać się do danych z różnych platform, warto rozważyć automatyzację takich działań. Przykładowo, jeśli co tydzień tworzysz raport z wynikami kampanii z różnych źródeł (Facebook, Google, e-mail marketing), to zamiast ręcznie logować się do każdego systemu i eksportować dane, można przygotować zestaw zapytań w Postmanie, które zrobią to automatycznie:

  • Utwórz kolekcję zawierającą wszystkie potrzebne zapytania API do zbierania danych (np. „Raport Tygodniowy” z zapytaniami: Facebook Insights, Google Ads Reports, MailChimp API dla emaili itp.).
  • Skonfiguruj odpowiednie środowisko (environment) w Postmanie, przechowujące klucze API, tokeny dostępu i zmienne takie jak zakres dat. Możesz np. ustawić zmienną start_date i end_date na zakres ostatniego tygodnia.
  • Dla każdego zapytania w kolekcji, ustaw parametry (np. daty) korzystając ze zmiennych środowiskowych. Dzięki temu jedną zmianą (np. zmieniając wartość zmiennej daty) można wygenerować raport za inny okres.
  • Wykorzystaj Collection Runner lub Newman do jednorazowego uruchomienia wszystkich zapytań i pobrania danych. Po zakończeniu, można przejrzeć wyniki w Postmanie lub zapisać je (każde ciało odpowiedzi można kopiować lub zapisać jako plik JSON).

Jeżeli zależy nam na regularnym, cyklicznym pobieraniu danych, możemy skorzystać z funkcji Monitorów Postmana. Monitory to usługa chmurowa powiązana z Postmanem, która potrafi uruchamiać wskazaną kolekcję w określonych odstępach czasu (np. codziennie o 8:00) i informować o wyniku (np. mailowo czy przez webhook). Choć monitory są częścią bardziej zaawansowanych planów Postmana, można je wykorzystać do automatycznego, harmonogramowego pobierania danych z API. Alternatywnie, można samodzielnie stworzyć skrypt z wykorzystaniem Newmana i zaplanować jego wykonanie (np. w cron na serwerze lub poprzez usługi CI/CD), dzięki czemu co tydzień lub miesiąc raporty będą ściągane i np. zapisywane na dysku lub wysyłane e-mailem do zainteresowanych osób.

W ten sposób Postman staje się nie tylko narzędziem do jednorazowych testów, ale elementem automatyzacji pracy marketingowej. Pozwala ograniczyć powtarzalne, ręczne czynności związane z pozyskiwaniem danych z różnych platform i zyskać pewność, że za każdym razem dane pobierane są w sposób spójny i dokładny.

Integracja z innymi narzędziami marketingowymi

Postman może też wspierać integrację między różnymi narzędziami marketingowymi. Załóżmy, że chcesz połączyć platformę reklamową z narzędziem do email marketingu albo z CRM:

  • Możesz przetestować webhooki i integracje: Jeżeli np. narzędzie marketing automation (np. HubSpot, Marketo) oferuje webhook, który wywołuje pewien URL z danymi (np. gdy ktoś wypełni formularz na stronie), można za pomocą Postmana zasymulować takie wywołanie. Wysyłasz POST na URL webhooka z odpowiednim JSON-em (imitującym dane formularza) i sprawdzasz, czy druga strona poprawnie odbiera i przetwarza te dane.
  • Testowanie integracji API-to-API: Jeśli planujesz stworzyć automatyczną integrację, np. gdy nowy lead pojawi się w systemie reklamowym, chcesz go dodać do narzędzia e-mailowego za pomocą ich API, to zanim napiszesz docelowy kod integracji, możesz w Postmanie przetestować poszczególne kroki. Np. wywołujesz API A, pobierasz z niego dane leadu, a następnie wywołujesz API B (już ręcznie kopiując dane lub automatyzując poprzez zapis do zmiennych i drugi request) aby upewnić się, że dane są akceptowane i prawidłowo zapisywane.
  • Wiele narzędzi marketingowych udostępnia publicznie kolekcje Postmana lub pliki definicji API (OpenAPI/Swagger). Można je zaimportować do Postmana, otrzymując gotowy zestaw endpointów do testów. To znacznie przyspiesza proces integracji, bo nie trzeba ręcznie konfigurować każdego wywołania – wystarczy uzupełnić parametry (np. wstawić swoje klucze API, identyfikatory kont itp.) i od razu można wykonywać żądania. Przykładowo, Facebook udostępnia oficjalną kolekcję do Graph API, a narzędzia email marketingu (jak MailChimp czy SendGrid) często mają gotowe kolekcje społeczności.

Ogólnie rzecz biorąc, Postman w marketingu spełnia rolę „katalizatora” integracji – pozwala marketerom i analitykom technicznym samodzielnie sprawdzać możliwości różnych API oraz weryfikować pomysły na połączenia między systemami, zanim zaangażują działy IT do realizacji takich integracji. Dzięki temu oszczędza się czas i lepiej planuje projekty opierające się na wymianie danych między platformami.

Najlepsze praktyki i zaawansowane funkcje

Praca zespołowa w Postmanie – jak udostępniać kolekcje?

W środowisku profesjonalnym często pracujemy nad API w zespole. Postman oferuje funkcje umożliwiające łatwe dzielenie się stworzonymi kolekcjami i współpracę nad nimi:

  • Workspace (Przestrzenie robocze): Postman umożliwia tworzenie przestrzeni roboczych, które mogą być prywatne lub zespołowe. Jeśli chcesz dzielić kolekcje ze współpracownikami, warto utworzyć workspace zespołowy i zaprosić do niego inne osoby (wymaga to posiadania konta Postman i dodania użytkowników przez adres e-mail). Wszystkie kolekcje i środowiska dodane do takiego workspace będą widoczne dla członków zespołu.
  • Udostępnianie kolekcji: Jeżeli nie korzystasz z zespołowych workspace’ów, możesz również udostępnić pojedynczą kolekcję. W Postmanie jest opcja Share przy kolekcji – można wygenerować link (publiczny lub prywatny) do kolekcji. Publiczny link (tzw. Postman public collection) udostępni nasz zestaw zapytań całemu światu (będzie widoczny w Public API Network Postmana), natomiast prywatny link można przekazać np. klientowi czy partnerowi, który będzie mógł zaimportować kolekcję do swojego Postmana. Oczywiście, zawsze możemy też wyeksportować kolekcję do pliku .JSON i przesłać go e-mailem czy przez komunikator.
  • Kontrola wersji i zmiany: Przy współdzielonych kolekcjach warto ustalić pewne konwencje, by nie nadpisać sobie nawzajem pracy. Postman co prawda synchronizuje zmiany na bieżąco (każda zmiana zapytania w workspace zespołowym jest widoczna u innych prawie natychmiast), ale dobrze jest umawiać się co do podziału zadań lub korzystać z forka/merge kolekcji (Postman pozwala zaforkować kolekcję, wprowadzić zmiany, a następnie zmerge’ować je z główną kolekcją, co może być przydatne w większych zespołach).
  • Współdzielenie środowisk (environments): Pamiętaj, że kolekcja to jedno, ale dane takie jak klucze API czy hasła często trzymamy w zmiennych środowiskowych. Postman pozwala udostępnić środowisko, ale ma to sens tylko dla niewrażliwych danych. Sekrety można zachować jako tzw. Current Value (wartość bieżąca zmiennej), która nie jest synchronizowana z zespołem, dzięki czemu każdy użytkownik może mieć własny klucz API w swoim środowisku bez ujawniania go innym.

W pracy zespołowej z Postmanem sprawdza się zasada konsekwencji i jasnych ustaleń: warto np. trzymać porządek w nazewnictwie zapytań, grupować je w foldery, dodawać opisy (documentation) do kolekcji i endpointów. To sprawi, że inni łatwo zrozumieją, co robi dany request i jakich danych oczekuje.

Tworzenie testów regresyjnych i symulacji

Gdy mamy już opanowane podstawy testowania pojedynczych endpointów, możemy wykorzystać Postmana do budowy testów regresyjnych – czyli zestawu testów automatycznych, które będziemy regularnie wykonywać, by upewnić się, że istniejące funkcjonalności API nadal działają poprawnie po wprowadzeniu zmian w kodzie. W tym celu:

  • Zgromadź wszystkie istotne wywołania API w jednej lub kilku kolekcjach (np. osobna kolekcja na testy funkcjonalne użytkowników, osobna na testy transakcji płatności itp.).
  • Do każdego zapytania dodaj skrypty testowe sprawdzające kluczowe warunki (statusy, pola w odpowiedzi, a także ewentualnie efekty uboczne, jak np. powstanie nowego rekordu – choć to ostatnie można sprawdzić kolejnym zapytaniem GET).
  • Ustal harmonogram uruchamiania testów regresyjnych. Można to robić manualnie (np. przed każdym wydaniem nowej wersji API odpalamy wszystkie testy w Collection Runnerze) lub automatycznie w CI przy pomocy Newman. Integracja Postmana z CI jest częsta: plik kolekcji i środowiska trzymamy w repozytorium kodu, a pipeline (np. w Jenkins, GitLab CI) odpala newman run tests.json -e env.json i generuje raport. Jeśli coś się zepsuło, od razu zobaczymy to w wynikach builda.

Drugim aspektem zaawansowanego użycia Postmana są symulacje. Możemy to rozumieć na dwa sposoby:

  1. Symulacja scenariuszy użycia (testowanie end-to-end): Dzięki możliwości łańcuchowego przekazywania danych między zapytaniami (poprzez zmienne), możemy stworzyć w Postmanie sekwencję wywołań odzwierciedlającą rzeczywisty scenariusz. Na przykład, test end-to-end dla modułu użytkowników może obejmować: rejestrację nowego użytkownika (POST), zalogowanie się (POST /auth -> dostanie tokenu), pobranie profilu (GET z tokenem), edycję profilu (PUT z tokenem), a na końcu usunięcie konta (DELETE). Cały ten ciąg można zapisać w jednej kolekcji jako kolejne requesty, powiązane ze sobą przez przekazywane identyfikatory i tokeny. W ten sposób symulujemy rzeczywiste użycie systemu i testujemy, czy wszystkie kroki działają ze sobą poprawnie.
  2. Symulacja API (Mock Server): Postman oferuje funkcję tworzenia tzw. Mock Serverów, czyli symulowanych serwerów API. Możemy na podstawie kolekcji wygenerować serwer mock (w chmurze Postmana lub lokalnie poprzez call do Postmana), który będzie odpowiadał przykładowymi danymi. Na przykład, jeśli nasz prawdziwy serwer API jest jeszcze w budowie, a chcemy już testować front-end, tworzymy w Postmanie kolekcję z przykładami odpowiedzi (tzw. Examples) dla konkretnych endpointów, a następnie uruchamiamy Mock Server. Otrzymujemy URL (adres) tego mocka, pod którym front-end będzie widział symulowane odpowiedzi tak, jakby rozmawiał z prawdziwym API. To potężna funkcja, która pozwala zasymulować brakujące elementy systemu na czas developmentu lub testów.

Wykorzystując obie powyższe metody, możemy kompleksowo przetestować zarówno pojedyncze funkcje, jak i całe przepływy działania aplikacji, a także wspomóc pracę innych zespołów (np. dając im narzędzie w postaci mock API, zanim dostępny będzie prawdziwy serwer). Pamiętajmy jednak, że mocki mają pewne ograniczenia – odpowiadają statycznymi, zaprogramowanymi danymi, więc nie zastąpią całkowicie logiki serwera. Nadają się jednak doskonale do wstępnych testów integracyjnych i demonstracji.

Eksportowanie i importowanie żądań API

Na koniec warto wspomnieć o możliwości eksportu i importu danych w Postmanie:

  • Importowanie: Postman potrafi importować różne formaty, co znacznie ułatwia rozpoczęcie pracy z istniejącym API. Możemy zaimportować plik kolekcji (format .postman_collection.json) otrzymany od kogoś innego lub pobrany z Internetu. Możemy również wkleić link do kolekcji (np. publicznej kolekcji Postmana) lub adres URL do pliku OpenAPI/Swagger. Postman odczyta te definicje i utworzy na ich podstawie kolekcję zapytań. To ogromna oszczędność czasu – zamiast ręcznie dodawać kilkadziesiąt endpointów, możemy zaimportować cały opis API i mieć gotowy szkielet do testów.
  • Eksportowanie: Każdą kolekcję czy środowisko możemy wyeksportować do pliku (JSON). Jest to przydatne do tworzenia kopii zapasowej naszych testów, do umieszczenia ich w repozytorium (dobra praktyka, gdy testy Postmana traktujemy jako część projektu) albo do przeniesienia na inny komputer. Eksport wykonamy klikając prawym przyciskiem na kolekcji i wybierając Export. Otrzymany plik można zaimportować na innym stanowisku, co spowoduje odtworzenie całej struktury zapytań.
  • Integracje: Warto wspomnieć, że Postman integruje się z niektórymi platformami DevOpsowymi i repozytoriami kodu. Można np. powiązać kolekcję z repozytorium na GitHubie lub Bitbucket, co umożliwia wersjonowanie zmian w kolekcjach i współpracę poprzez git (funkcja ta jest dostępna w płatnych planach Postmana). Jeżeli jednak nie korzystamy z tak zaawansowanych integracji, ręczny eksport/import również spełni swoją rolę.

Podsumowując najlepsze praktyki: zawsze dbajmy o porządek i ład w naszych kolekcjach, opisujmy je i testujmy automatycznie, dzielmy się z innymi kiedy trzeba oraz korzystajmy z mechanizmów ułatwiających pracę (zmienne, skrypty, mocki, importy). Postman oferuje bardzo bogaty zestaw funkcjonalności – warto je poznać i wdrożyć, by jeszcze lepiej wykorzystać możliwości tego narzędzia zarówno w indywidualnej pracy, jak i w dużych projektach zespołowych.

< Powrót

Zapisz się do newslettera


Zadzwoń Napisz