N8N – Podstawy automatyzacji, które musisz znać #EN138

TL;DR

  • Zawsze używaj Expression fields zamiast Fixed – dają więcej kontroli i możliwości manipulacji kodem
  • Wszystkie dane w N8N to tablice obiektów – zrozumienie tej struktury eliminuje 90% błędów początkujących
  • JSON to fundament – bez znajomości JavaScript Object Notation wszystko będzie trudniejsze
  • N8N jest AI-native – wbudowane funkcjonalności AI znacznie przewyższają inne platformy no-code
  • Webhooks to klej internetu – pozwalają łączyć dowolne systemy bez głębokiej wiedzy programistycznej
  • Praktyczne zastosowania generują prawdziwy ROI – jak system automatycznej odpowiedzi na zapytania dziennikarzy
  • HTTP requests + AI = potężny web scraping – możliwość analizy dowolnych stron internetowych

Filozofia praktycznego podejścia do N8N

Nick Sarief z Left Click AI kładzie duży nacisk na praktyczne tworzenie rozwiązań. W przeciwieństwie do wielu platform no-code, N8N nie chowa kodu – go wykorzystuje. Jak zauważa Sarief, zrozumienie podstaw kodu, szczególnie JSON, sprawia, że stajesz się znacznie potężniejszy w automatyzacji.

W webinarze Sarief prezentuje dwa kompletne systemy biznesowe. Pierwszy to personalizacja zimnych e-maili – system pobiera dane leadów z Google Sheets, analizuje je przez AI i generuje spersonalizowane elementy emaili (subject line, icebreaker, elevator pitch, call to action, PS). Drugi to automatyzacja odpowiedzi na zapytania dziennikarzy z platformy Source of Sources.

Większość osób na YouTube pokazuje podstawy, jednak Sarief skupia się na systemach, które faktycznie sprzedaje swoim klientom. Dlatego jego focus to rozwiązania generujące prawdziwy zwrot z inwestycji.

Expression fields vs Fixed fields – kluczowa decyzja

Według Sariefa, najważniejszą decyzją w N8N jest zawsze używanie Expression fields zamiast Fixed. Dlaczego? Fixed fields to uproszczenie dla początkujących. N8N domyślnie ustawia pola na Fixed, aby nie przestraszyć użytkowników. Jednak ta „łatwość” ogranicza możliwości.

Expression fields dają dostęp do prawdziwej mocy. Możesz robić dokładnie to samo co w Fixed, ale dodatkowo:

  • Manipulować danymi w locie
  • Używać funkcji wbudowanych w N8N (split, join, filter)
  • Łączyć różne źródła danych w jednym polu
  • Dodawać logikę warunkową bez dodatkowych węzłów
  • Referencować dane z poprzednich węzłów
  • Wykonywać operacje matematyczne i tekstowe

Jak podkreśla Sarief: „Nie ma realnej potrzeby używania Fixed. Możesz napisać to samo w Expression, a dodatkowo masz opcje kodowe.”

JSON – język, którym mówi N8N

JavaScript Object Notation to nie tylko format danych – to sposób myślenia o strukturach informacji. Sarief pokazuje, że bez zrozumienia JSON wszystko w N8N będzie trudniejsze.

Podstawowe typy danych w JSON

Strings (ciągi znaków) – zawsze w cudzysłowach:

json
"firstName": "Nick"

Numbers (liczby) – bez cudzysłowów:

json
"age": 30

Booleans (prawda/fałsz) – true lub false:

json
"isActive": true

Arrays (tablice) – lista elementów w nawiasach kwadratowych:

json
"skills": ["automation", "AI", "marketing"]

Objects (obiekty) – zagnieżdżone struktury:

json
"user": {
  "firstName": "Nick",
  "company": "Left Click AI"
}

Najczęstszy błąd początkujących

Sarief identyfikuje główną pułapkę w N8N: niezrozumienie ile obiektów wysyła poprzedni węzeł. Ludzie próbują odwołać się do danych, które nie istnieją lub istnieją w innej strukturze niż oczekują.

Techniczne szczegóły referencowania

Problem z spacjami w nazwach pól. Gdy nazwa pola zawiera spacje (jak „First Name Suggestion”), nie możesz użyć standardowej notacji kropkowej. Musisz zastosować notację nawiasów kwadratowych:

$json['First Name Suggestion']  // Zamiast $json.First Name Suggestion

Mimo dostępnych opcji, Sarief preferuje camel case (firstName) zamiast podkreślników (first_name) dla lepszej czytelności kodu.

Jak N8N strukturyzuje dane

Wszystkie dane w N8N to tablice obiektów – to fundamentalna zasada, którą musisz zrozumieć. Jak wyjaśnia Sarief, każdy input i output ma strukturę:

json
[
  {
    "item1": "data"
  },
  {
    "item2": "more data"
  }
]

Odwoływanie się do danych

Z poprzedniego węzła:

$json.fieldName

Z węzłów wcześniejszych:

$('NodeName').item.json.fieldName

Sarief podkreśla: „Jeśli zrozumiesz, że wszystko to tablice obiektów, rozwiążesz największą pułapkę N8N.”

Ukryta struktura danych

N8N ukrywa prawdziwą strukturę danych. To co widzisz w interfejsie jako proste pola, w rzeczywistości ma dodatkowe warstwy. Kiedy odwołujesz się do danych sprzed więcej niż jednego węzła, musisz użyć pełnej ścieżki:

$('NodeName').item.json.fieldName

Item i JSON to ukryte warstwy, których nie widzisz w standardowym widoku, ale są wymagane przy referencowaniu.

Węzły do wykonywania akcji

HTTP Requests – dostęp do całego internetu

Według Sariefa, HTTP requests pozwalają robić dokładnie to samo co przeglądarka – pobierać kod stron internetowych. Jednak w N8N dostajesz surowy kod, nie wyrenderowaną stronę.

Praktyczne zastosowanie: Sarief pokazuje jak w kilka minut zbudować scraper, który pobiera kod strony internetowej, ekstraktuje tekst używając selektorów CSS (H1, H2, P tags), łączy wszystkie teksty funkcją join(), analizuje zawartość przez AI i generuje strukturalne dane biznesowe w JSON.

Uwaga o cloud vs self-hosted N8N

Sarief używa cloud hosted offering N8N, co znacznie upraszcza integracje. Na cloudzie wystarczy „Sign in with Google” dla połączeń z Google Sheets czy Gmail. W wersji self-hosted musisz ręcznie konfigurować połączenia przez Google Cloud Console – znacznie bardziej skomplikowany proces.

Webhooks – klej łączący systemy

Webhooks to sposób na otrzymywanie danych z zewnętrznych systemów. Sarief demonstruje jak w 30 sekund połączyć ClickUp z N8N:

✅ Checklist: Konfiguracja webhooków (bazowane na przykładzie z webinaru)

☐ Stwórz webhook w N8N (automatycznie dostajesz URL)
☐ Skopiuj wygenerowany URL
☐ Sprawdź czy używasz GET czy POST (Sarief testował oba dla ClickUp)
☐ Skonfiguruj w zewnętrznym systemie wysyłanie na ten URL
☐ Przetestuj połączenie robiąc test event
☐ Zmień na production URL przed publikacją workflow

Jak to ujmuje Sarief: „To klej, który trzyma internet razem”.

AI Agents – przewaga N8N

N8N jest AI-native od samego początku. W przeciwieństwie do innych platform, które AI „doklejają”, N8N ma wbudowane funkcjonalności jak OpenAI integration, AI Agents z dostępem do narzędzi, memory management i automatyczne wywołania funkcji.

Memory management jest kluczowe. Bez memory AI agent nie pamięta poprzednich wiadomości – każda sesja jest niezależna. Dlatego Sarief używa Window Buffer Memory z 10 wiadomościami (domyślnie 5) do zachowania kontekstu rozmowy.

Dostępne modele AI: OpenAI, Mistral, Google Gemini, Anthropic, Ollama. Sarief preferuje OpenAI dla lepszej jakości odpowiedzi, jednak możesz wybierać w zależności od wymagań bezpieczeństwa danych.

Sarief pokazuje agenta, który automatycznie sprawdza kalendarz Google i odpowiada na pytania o spotkania. Agent może również generować audio – przykład „Nick is awesome and very pretty” głosem Nova z OpenAI.

Węzły modyfikujące przepływ

If statements – logika warunkowa

If pozwala na tworzenie dwóch ścieżek: true i false. Sarief używa prostego przykładu – jeśli imię to „Nick”, nagroda $100, w przeciwnym razie $5.

Filter – zatrzymywanie niepotrzebnych danych

Filter to bramka – przepuszcza tylko dane spełniające warunki. W przeciwieństwie do If, który tworzy dwie ścieżki, Filter albo przepuszcza dalej, albo zatrzymuje.

Merge – łączenie wielu ścieżek

Gdy masz dwie równoległe ścieżki (np. generowanie dwóch różnych tekstów), Merge pozwala je połączyć w jeden strumień danych.

Split into batches – kontrola nad tempem

Kluczowe dla zarządzania rate limitami. Sarief pokazuje przykład z 128 leadami – zamiast bombardować API wszystkimi naraz, Split into batches przetwarza je jeden po drugim z 5-sekundowymi przerwami.

Problem rate limitów jest realny. Sarief często napotykał błędy 400/403 (przekroczenie limitu API) przy jednoczesnym przetwarzaniu dużych ilości danych. Rozwiązanie: Loop over items + Wait node eliminuje te problemy.

Merge ma różne tryby: append (łączy jako osobne elementy), combine (scala w jeden obiekt) i SQL query. Jednak Sarief używa głównie append dla prostoty.

Case study 1: System personalizacji zimnych e-maili

Przed przejściem do systemu dla dziennikarzy, Sarief pokazuje pierwszy system – automatyczną personalizację zimnych e-maili. Proces wygląda następująco:

Input: Google Sheet z leadami (Amy, Joe, Mercedes, Susan) zawierający pola jak civility, first name, company, title, summary, industry.

AI Processing: System wysyła dane do OpenAI z promptem generującym 5 elementów emaila:

  • Subject line: „Hej Amy, myślę, że mam coś dla Ciebie odnośnie wzmocnienia strategii online”
  • Icebreaker: „Wiem, że prowadzisz Creative Web Solutions w Netdirectives…”
  • Elevator pitch: „Krótko mówiąc, myślę, że mogę dodać 5k/miesiąc do Twoich wysiłków marketingowych skupionych na kliencie”
  • Call to action: „Właśnie zrobiłem to dla bardzo podobnej firmy konsultingowej IT…”
  • PS: „Nawet jeśli tylko porozmawiamy, chciałbym usłyszeć o tym, co robisz z video marketingiem”

Output: System automatycznie aktualizuje Google Sheet z wygenerowanymi treściami i tworzy szkice e-maili w Gmail.

Case study 2: Automatyzacja odpowiedzi na zapytania dziennikarzy

Sarief prezentuje kompletny system automatyzacji oparty na Source of Sources (dawniej HARO) – serwisie łączącym dziennikarzy z ekspertami.

Problem biznesowy

Dziennikarze wysyłają codziennie zapytania szukając ekspertów w różnych dziedzinach. Przykłady rzeczywistych zapytań z SOS:

  • „Poszukuję specjalisty od Medicare w służbie zdrowia, który wypowie się na temat wpływu RFK Jr i Dr. Mehmet Oz na świadczenia”
  • Zapytania o tech trends, AI, automatyzację biznesową

Ręczne przeglądanie i odpowiadanie to masowe marnowanie czasu. Dlatego system Sariefa automatycznie parsuje email, ocenia trafność i generuje odpowiedzi.

Rozwiązanie automatyczne

✅ Checklist: Budowanie automatyzacji email response (bazowana na systemie Sariefa)

Gmail trigger – skonfiguruj filtr na nadawcę (np. „SOS Media Queries”)
Wyłącz Simplify – ustaw na false żeby dostać pełne dane email
Analiza treści – użyj split() do dzielenia na podstawie separatorów
Split out array – przekształć array w pojedyncze elementy
Dodaj Limit – testuj najpierw na 2-3 elementach
AI evaluation – sprawdź trafność przed generowaniem odpowiedzi
Filter – przepuść tylko trafne (true) zapytania
Generuj odpowiedzi – AI tworzy email na podstawie szablonu
Draft creation – zapisz jako draft do ręcznej weryfikacji
Test end-to-end – sprawdź cały przepływ przed uruchomieniem

Kluczowe funkcje użyte

Sarief wykorzystał funkcje Split do dzielenia treści email na podstawie separatorów (gwiazdki i podkreślenia charakterystyczne dla SOS), Filter do przepuszczania tylko trafnych zapytań oraz Limit do testowania na małej próbie przed pełnym uruchomieniem.

Szczegóły parsingu: SOS używa konsystentnych separatorów – gwiazdki na górze emaila i podkreślenia między zapytaniami. Pierwszy split dzieli na „powyżej linii gwiazdek” i „poniżej”. Drugi split dzieli dolną część na pojedyncze zapytania. Finalny rezultat: 19 elementów gotowych do analizy przez AI.

Funkcja join() jest kluczowa – przekształca array tekstów w jeden string, który AI może przetworzyć.

Jak mówi Sarief o obu systemach: „To system, który sprzedałem już wiele razy”. Automatyzacja nie tylko oszczędza czas, ale zwiększa szanse na publikację dzięki szybkiej i profesjonalnej odpowiedzi. System personalizacji emaili zwiększa wskaźniki odpowiedzi dzięki pozornemu „research” każdego leada.

Praktyczne wskazówki od eksperta

Debugowanie w N8N

Zawsze patrz na JSON output – nie na Schema czy Table view. Sarief tłumaczy: „Jeśli będziemy patrzeć na outputy cały dzień, równie dobrze możemy nauczyć się JSON.”

Pin data na każdym etapie – zapisuje dane z kosztownych operacji (jak AI calls) żeby nie płacić za każdy test.

Zarządzanie tokenami AI

Zawsze dodawaj limity znaków w promptach do AI. Sarief pokazuje, jak bez tego czekał „do następnej epoki lodowcowej” na odpowiedź GPT. Tip: Dodaj „less than 100 words” do promptów.

Unikanie rate limitów

Używaj Wait nodes i Split into batches – szczególnie przy integracjach z zewnętrznymi API. Sprawdzaj czy workflow nie wykonuje się zbyt często i nazywaj węzły opisowo dla lepszej organizacji.

Execute Once setting

Gdy węzeł otrzymuje multiple items, ale ma uruchomić się tylko raz – użyj Execute Once w ustawieniach węzła. Sarief pokazuje przykład gdzie Gmail miał utworzyć jeden draft zamiast dwóch identycznych.

Co dalej z N8N

Jak podkreśla Sarief, to dopiero podstawy. Prawdziwa wartość N8N ujawnia się przy budowaniu systemów multi-agent AI i złożonych automatyzacji biznesowych.

Kluczem jest przejście od myślenia „no-code” do myślenia „low-code” – wykorzystania tej mocy, którą daje N8N zamiast walki z nią.

Kluczowy insight

Nie uciekaj od kodu

Standardowo myślimy: Wybieramy no-code platformy, żeby uniknąć programowania i kodowania. Fixed fields wydają się bezpieczniejsze dla początkujących.

W praktyce okazuje się, że: W N8N sukces przychodzi gdy przyjmujesz kod, nie gdy go unikasz. Jak zauważa Sarief: „N8N nie chowa kodu – go wykorzystuje” i „Nie ma realnej potrzeby używania Fixed.”

Dlaczego to jest istotne: Ten paradoks oznacza, że osoby które „boją się kodu” będą ograniczone, podczas gdy te które go przyjmą – odblokują prawdziwą moc automatyzacji. To odwraca całą filozofię no-code.

Test na jutro: Następnym razem gdy będziesz konfigurować węzeł w N8N, zamiast zostawać w Fixed fields, od razu przełącz na Expression i sprawdź ile dodatkowych opcji zyskujesz.


Ten wpis jest częścią mojej kolekcji notatek z ciekawych podcastów, webinarów i innych treści, które uważam za wartościowe i do których sam chcę wracać. Jeśli chcesz sprawdzić oryginalne źródło, znajdziesz je tutaj: N8N Foundational Concepts (AI Agents, JSON, Logic)


Opublikowano

,

Komentarze

Dodaj komentarz