Po kliknutí na nod se zobrazí menu s několika položkami (v závislosti na konkrétním nodu).
- Upravit (Edit) - po kliknutí se zobrazí okno pro editaci nodu. Stejné okno se zobrazí po dvojitém kliknutí na nod jako takový.
- Smazat (Delete) - po kliknutí se zobrazí upozornění s dotazem, zda má být nod skutečně smazán. Pokud uživatel smazání potvrdí, je nod smazán.
- Kopírovat (Copy) - po kliknutí je nod zkopírován (včetně jeho nastavení)
- Zobrazit (View) - zobrazí vzorek dat, která jsou v nodu zpracovávána a počet příjemců, kteří:
- Jsou aktuálně zpracováváni
- Byli úspěšně zpracováni
- Nebyli zpracováni
- Spustit (Run) - spustí běh scénáře (zobrazuje se pouze u spouštěče “Now”)
V editoru je k dispozici několik kategorií nodů:
Trigger se nespustí zapnutím celého scénáře, nýbrž kliknutím na tlačítko “RUN”. Přepínač pro spuštění/zastavení scénáře v pozici (viz. obrázek níže) indikuje, že scénář byl spuštěn ručně, nikoli jinými spouštěči. Pro další editace je poté opět potřeba scénář “vypnout”.

Čas ukončení je vždy stejný jako čas zahájení, tzn. pokud je čas zahájení pondělí v 16:30 a den ukončení je pátek, bude v pátek scénář spuštěn také v 16:30.
Pokud není datum ukončení nastaveno, bude se scénář opakovat, dokud jej uživatel nevypne.
V jednom nodu je možné naplánovat více jednorázových bezobslužných spuštění, tedy v různé dny i různé časy, nebo např. v různé časy v rámci jednoho dne.
Nod má několik režimů, které lze vybrat z nabídky pro “Run on Events”:
Subscribe to recipient list → když se příjemce přihlásí do vybraného seznamu příjemců, vstoupí do scénáře.
K tomu dochází pouze v případě, že se příjemce přihlásil prostřednictvím formuláře pro přihlášení k odběru nebo byl přidán prostřednictvím API volání mailkit.mailinglist.adduser.
Email read → když příjemce otevře e-mail z vybrané kampaně nebo rozesílky, vstoupí do scénáře. Příjemce může do scénáře vstoupit pouze jednou.
Pokud je vybrána jedna kampaň, je možné vybrat konkrétní rozesílku/rozesílky. Pokud je vybráno více kampaní, nelze již konkrétní rozesílky vybrat.
Poznámka: Pokud v účtu nejsou zatím žádné odeslané kampaně, nabídka pro výběr kampaní se nezobrazí.
Email click → když příjemce klikne na odkaz v e-mailu z vybrané kampaně nebo konkrétní rozesílky, vstoupí do scénáře. Příjemce může do scénáře vstoupit pouze jednou.
Pokud je vybrána jedna kampaň, je možné vybrat konkrétní rozesílku/rozesílky. Pokud je vybráno více kampaní, není výběr rozesílek k dispozici.
Hodnota vyplněná v poli “Link” je porovnávána s odkazy v rozesílce/rozesílkách jako string s operátorem “contains”, tzn. pokud chcete pracovat s konkrétním linkem, je potřeba vyplnit jeho celou URL - např. https://www.mailkit.com/cz/podpora/dokumentace/
Pokud byste do pole “Link” vyplnili hodnotu https://www.mailkit.com, bude scénář reagovat na prokliknutí kteréhokoli odkazu v e-mailu, který vedl na naše webové stránky.
Poznámka: Pokud v účtu nejsou zatím žádné odeslané kampaně, nabídka pro výběr kampaní se nezobrazí.
Operation Execute → v tomto režimu vstupují do scénáře příjemci z nodu Operace - Execute z jiného vybraného scénáře.
Event API → tento režim reaguje na eventy stejným způsobem, jako remarketingová kampaň. Může reagovat na dokončené nebo nedokončené eventy po nastaveném čase. Výstupem jsou data z eventu, která jsou v datových strukturách Event a EventItem a mohou být použita v šabloně stejně jako v remarketingové kampani.
Zdroje dat (SOURCES)
Tyto nody jsou nejčastěji používány pro vkládání příjemců do scénářů, ale umožňují také, aby data příjemců, kteří již scénářem procházejí, byla v daném bodě scénáře obohacena o data z různých zdrojů.
Obohacování dat
První zdroj v každém scénáři je tzv. primární zdroj, a všechny zdroje, které jej následují, obohacují data příjemců z primárního zdroje.
Výjimka: On Event spouštěč – protože je tento node také zdrojem dat příjemců (i přesto, že není v kategorii zdrojů), je považován za primární zdroj a každý následující zdroj jej obohacuje.
V případě několika po sobě jdoucích zdrojů, je ten primární vyznačen tmavým okrajem.
DELIVERY FEED (Zdroj doručování)
Tento nod vkládá do scénáře příjemce z delivery feedu nebo obohacuje data příjemců, kteří již scénářem procházejí.
SQL
Umožňuje přístup k datům v konkrétním SQL datovém zdroji. Po výběru SQL datového zdroje se zobrazí seznam jednotlivých sloupců, lze tedy vybrat sloupec, ve kterém je uložen e-mail.
Po výběru scénáře a nodu Operace-Collect v něm se vytvoří spojení a všichni příjemci z vybraného scénáře se přesunou do zdroje Collect v aktuálním (spravovaném) scénáři → tím dojde k vyprázdnění nodu Operace - Collect v propojeném scénáři.
Další příjemci přicházející do nodu Operace - Collect v propojeném scénáři budou okamžitě přesunuti do zdroje Collect v upravovaném scénáři.
EVENT
Tento zdroj obohacuje data příjemců daty z eventů - funguje stejně jako Events plug-in do šablon.
Musí jej předcházet node, který má jako výstup recipientská data (tedy buď zdroje, nebo On Event spouštěč), protože aby bylo možné vyhledat příslušný event, je třeba znát e-mailovou adresu.
CONDITION (Podmínka)
Tato operace umožňuje uživateli vytvořit podmínku kombinací proměnné, operátoru a hodnoty. Je možné vytvořit více podmínek propojených jedním z logických operátorů AND nebo OR.
Existují tři skupiny operátorů:
TEXT – pro operace s textovými hodnotami
- je stejné (equal)
- není stejné (not equal)
- začíná (begins with)
- nezačíná (doesn't begin with)
- končí (ends with)
- nekončí (not ends with)
- obsahuje (contains)
- neobsahuje (doesn't contain)
Příklad: recipient.city je stejné (equal) Červené Pečky -> budou vyhledány záznamy s hodnotou „Červené Pečky“, „Cervené Pecky“, „cervené pečky“, „ČERVENÉ Pečky“ a další
- je prázdné (is empty)
- není prázdné (is not empty)
- přesně odpovídá (exact match)
- přesně neodpovídá (not exact match)
Příklad: recipient.city přesně odpovídá (exact match) Červené Pečky -> budou vyhledány pouze záznamy s hodnotou „Červené Pečky“, nikoli záznamy „Cervené Pecky“, „cervené pečky“, „ČERVENÉ Pečky“ a další
ČÍSLO – pro operace s číselnými hodnotami
- = (rovná se/equal)
- != (nerovná se/not equal)
- < (menší/less) – POZOR, menší než jakékoli číslo je i prázdná hodnota
- <= (menší nebo rovno/less or equal) – POZOR, menší než jakékoli číslo je i prázdná hodnota
- > (větší/greater)
- >= (větší nebo rovno/greater or equal)
DATUM A ČAS – pro operace s časovými údaji
- je stejné (equal)
- není stejné (not equal)
- před (before) – vyhledá hodnoty s údajem menším (dřívějším) než je porovnávaná hodnota. POZOR, menší než jakýkoli časový údaj je i prázdná hodnota
- není před (not before) – vyhledá hodnoty s údajem, který je větší (pozdější) nebo roven porovnávané hodnotě
- po (after) – vyhledá hodnoty s údajem větším (pozdějším) než je porovnávaná hodnota.
- není po (not after) – vyhledá hodnoty s údajem, který je menší (dřívější) nebo roven porovnávané hodnotě. POZOR, menší než jakýkoli časový údaj je i prázdná hodnota

Při práci s časovými údaji (s použitím operátorů pro časové údaje) se porovnává pomocí intervalů (INTERVAL) - viz obrázek výše. Jako interval můžete použít hodnoty YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE a SECOND.
K filtrování nad hodnotou v poli (např. vlastní pole příjemce) můžete pracovat s hodnotami:
- [YEAR] – aktuální rok
- [MONTH] – aktuální měsíc
- [DAY] – aktuální den
- [HOUR], [MIN], [SEC] – hodina, minuta, vteřina
- [CURDATE] – aktuální datum (ve formátu YYYY-MM-DD, tedy např. 2025-10-20)
- [CURTIME] – aktuální čas (ve formátu HH:MM:SS, tedy např. 14:30:45)
- [NOW] – aktuální datum a čas (např. 2025-10-20 14:30:45)
- [DAYOFMONTH] – pořadí (číslo) dne v měsíci
- [DAYOFWEEK] – pořadí (číslo) dne v týdnu (0=pondělí, 6=neděle)
- [DAYOFYEAR] – pořadí (číslo) dne v roce
- [QUARTER] – pořadí (číslo) čtvrtletí v roce
- [WEEK] – pořadí (číslo) týdne v roce
- [MONTHNAME] – název měsíce v angličtině (January, February...)
- [DAYNAME] – název dne v angličtině (Monday, Tuesday...)
- [MONTHNAME_SHORT] – zkrácený název měsíce v angličtině (Jan, Feb...)
- [DAYNAME_SHORT] – zkrácený název dne v angličtině (Mon, Tue...)
-> na základě podmínky na obrázku výše budou vybráni příjemci, kteří mají ve vlastním poli předvčerejší datum (datum o 2 dny menší než je aktuální datum (CURDATE)). Je možné pracovat i s náhodným čísly, např:
"recipient.custom_field.custom_1" BEFORE "date_eu|[CURDATE] - INTERVAL [RAND 30] DAY"
-> na základě této podmínky bude porovnávána hodnota ve vlastním poli 1 (kde je datum uloženo ve formátu date_eu (DD.MM.YYYY) s aktuálním datem mínus náhodný počet dní (1-30)
Pro práci s časovými údaji je nutné, aby údaje v poli (např. vlastní pole) u příjemců byly v některém z podporovaných formátů:
- datetime – např. 2024-01-12 12:13:14 nebo 2024/01/12 12:13:14
- date_us – např. 2024-01-12 nebo 2024/01/12
- date_us_short – např. 24-01-12
- date_eu – např. 01.12.2024
- date_eu_short – např. 01.12.24
- date_eu_dm – např. 01.12.
- date – např. 2024-01-12 nebo 2024/01/12
- date_dm2 – např. 31/12
- date_md – např. 12/31
- time – např. 12:13:14 (je používán 24hodinový formát)
Proměnná může být buď vepsána ručně (při psaní se postupně nabízejí proměnné odpovídající zadávanému textu), nebo může být vybrána ze seznamu dostupných proměnných, které lze zobrazit tlačítkem 
TIP: V nodu CONDITION (Podmínka) můžete porovnávat i hodnoty příjemce v rámci jeho dat. Pokud byste např. chtěli vybrat příjemce, pro které platí, že hodnota ve vlastním poli 6 je větší než hodnota ve vlastní poli 7, pak bude podmínka vypadat takto:
recipient.custom_fields.custom_6 je větší (greater) [VAR recipient.custom_fields.custom_7]

Práce s poli
Zatímco při aplikaci podmínky na seznam příjemců (data o příjemcích) systém automaticky prochází všechny záznamy (příjemce) v seznamu příjemců, u SQL datových zdrojů či Eventových struktur je to trochu složitější.
Různým zápisem tak můžete různých výsledků:
Jednoduché pole ([*])
- např. Events[*].currency –> systém projde pole "currency" u všech událostí (Eventů)
Vnořená pole ([*]…[*])
- např. Events[*].EventItems[*].price –> systém projde všechny události (Eventy) a v nich ve všech položkách polem "price"
Indexovaná pole ([0])
- např. Events[0].currency –> systém projde pole "currency" u první ([0]) události (Eventu)
Příklad struktury události:
'Events' => [# 1 záznam v poli Events]
{
'first_name' => 'aaa',
'currency' => 'CZK',
'gender' => '',
'status' => 'finish',
'items_amount' => '200.0000',
'ID_workflow_event' => 11699290,
'email' => 'jiri+1@mailkit.eu',
'items_count' => 2,
'status_url' => '',
'decimal_separator' => '',
'description' => '',
'language' => 'en',
'promo' => '',
'promo_teaser' => '',
'order_no' => '',
'invoice_no' => '',
'modify_date' => '2025-07-23 09:55:04',
'invoice_url' => '',
'create_date' => '2025-07-23 09:55:04',
'promo_value' => '',
'event_tag' => 'kosik',
'return_url' => '',
'thank_you' => '',
'last_name' => 'kkk'
'EventItems' => [# 2 záznamy v poli EventItems]
{
'teaser' => '',
'item_available' => '',
'name' => '',
'date' => '2025-07-23 09:55:04',
'item_curr' => 'CZK',
'price' => '100.0000',
'product_id' => 'A001',
'product_category' => '',
'item_total' => '100.0000',
'product_cat_url' => '',
'product_url' => '',
'ID_workflow_event_item' => 62757504,
'item_qty' => '1.0000',
'description' => '',
'item_discount' => '',
'price_orig' => '0.0000',
'image_url' => ''
},
{
'product_id' => 'B001',
'price' => '100.0000',
'teaser' => '',
'item_curr' => 'CZK',
'date' => '2025-07-23 09:55:05',
'name' => '',
'item_available' => '',
'description' => '',
'item_qty' => '1.0000',
'image_url' => '',
'price_orig' => '0.0000',
'item_discount' => '',
'item_total' => '100.0000',
'product_category' => '',
'ID_workflow_event_item' => 62757505,
'product_url' => '',
'product_cat_url' => ''
}
],
}
],
Pro podmínkování nad událostmi pak můžete použít různé zápisy:
- Events[*].EventItems[*].price –> systém projde všechny události (Eventy) a v nich ve všech položkách polem "price"
- Events[0].EventItems[*].price –> systém projde 1. událost ([0]) a v ní všechny ([*]) položky EventItems.price
- Events[0].EventItems[0].price –> systém projde 1. událost ([0]) a v ní první ([0]) položku EventItems.price

Nod má 2 výstupy - TRUE (pravda) a FALSE (nepravda). První výstup vždy nese hodnotu TRUE. Pokud poté znovu kliknete ve výstupu z nodu, objeví se větev s hodnotu FALSE.

Další praktické tipy:
PŘÍJEMCE V E-MAILU KLIKNUL POUZE JEDNOU
Někdy může nastat situace, že budete chtít ošetřit, aby bylo vyhodnoceno pouze 1. kliknutí příjemce (např. v situaci, kdy pošlete e-mail se soutěžní otázkou a chcete, aby byla vyhodnocena pouze 1. odpověď příjemce)
Abyste mohli kliknutí vyhodnotit, musíte znát ID nodu s e-mailem, který byl příjemcům odeslán a ve kterém kliknutí sledujete –> to zjistíte kliknutím na „UKÁZAT“ u nodu EMAIL jako hodnotu parametru scenario – actual_node

Pak už stačí jen nastavit podmínku (CONDITION), ve které použijete proměnnou „scenario.click_XXXX“, kde XXXX je číslo nodu s e-mailem (viz výše)
• příjemci, kteří podmínku splní (je to jejich první kliknutí) pokračují do větve TRUE
• příjemci, kteří podmínku nesplňují (kliknuli víckrát) pokračují do větve FALSE a v našem případě scénář opouští

Základní rozdíl mezi podmínkou a A/B splitem je, že A/B split může mít několik výstupů, zatímco podmínka pouze dva. Příjemci v uzlu jsou rozděleni minimálně do 2 skupin, maximálně do 11 skupin (10 + kontrolní skupina). Každá skupina je procentem z celku, součet musí být vždy 100 %, jinak nelze nod uložit. Příjemci jsou do skupin rozdělování zcela náhodně.
LIMIT
Limit platí pro nod jako celek. Neomezuje vstup do nodu, vždy pouze výstup z něj.
Pokud uživatel potřebuje více limitů, může je řetězit jeden po druhém. Existují dva výstupy, pod limit (TRUE) a nad limit (FALSE).
Příklad: Pokud je limit nastaven na 100 příjemců za 1 hodinu, prvních 100 příjemců, kteří do nodu vstoupí, bude odesláno na podlimitní výstup (TRUE), všichni ostatní příjemci poté budou odesláni na nadlimitní výstup (FALSE). Po uplynutí 1 hodiny od příchodu prvního příjemce se limit vynuluje pro dalších 100 příjemců.
SET (Nastavit)
Nastavení atributů ve struktuře příjemce (jméno, příjmení, vlastní pole atd.) - jde o stejné atributy, se kterými se pracuje v 1. kroku podmíněného doručení/filtrování příjemců.
Pokud příjemce již nějakou hodnotu v atributu má, bude přepsána. V nodu vždy existuje alespoň jeden atribut, který bude nastaven, a nelze jej smazat.
Kromě konkrétních statických hodnot lze atributy nastavovat i pomocí proměnných:
Základní časové údaje:
- [YEAR] –> bude vložena hodnota odpovídající aktuálním roku (např. 2025)
- [MONTH] –> bude vložena hodnota (číslo) odpovídající aktuálnímu měsíci, tedy hodnoty 01 až 12
- [DAY] –> bude vložena hodnota (číslo) odpovídající aktuálnímu dni v měsíci, tedy hodnoty 01 až 31
- [HOUR] –> bude vložena hodnota (číslo) odpovídající aktuální hodině, tedy hodnoty 00 až 23
- [MIN] –> bude vložena hodnota (číslo) odpovídající aktuální minutě, tedy hodnoty 00 až 59
- [SEC] –> bude vložena hodnota (číslo) odpovídající aktuální vteřině, tedy hodnoty 00 až 59
Formátové údaje o datu a času:
- [CURDATE] –> bude vložena hodnota odpovídající aktuálnímu datu ve formátu YYYY‑MM‑DD (např. 2025‑10‑20)
- [CURTIME] –> bude vložena hodnota odpovídající aktuálnímu času ve formátu HH:MM:SS (např. 14:30:45)
- [NOW] –> bude vložena hodnota odpovídající aktuálnímu datu a času (např. 2025‑10‑20 14:30:45)
Rozšířené časové údaje:
- [DAYOFMONTH] –> bude vložena hodnota (číslo) odpovídající pořadí aktuálního dne v měsíci, tedy hodnoty 1 až 31
- [DAYOFWEEK] –> bude vložena hodnota (číslo) odpovídající pořadí aktuálního dne v týdnu (0=pondělí, 6=neděle)
- [DAYOFYEAR] –> bude vložena hodnota (číslo) odpovídající pořadí aktuálního dne v roce (1-365/366)
- [QUARTER] –> bude vložena hodnota (číslo) odpovídající pořadí aktuálního čtvrtletí v roce (1-4)
- [WEEK] –> bude vložena hodnota (číslo) odpovídající pořadí aktuálního týdne v roce (1-53)
Názvy dní a měsíců:
- [DAYNAME] –> bude vložen celý název (text) aktuálního dne v týdnu v angličtině (Monday, Tuesday...)
- [DAYNAME_SHORT] –> bude vložen zkrácený název (text) aktuálního dne v týdnu v angličtině (Mon, Tue...)
- [MONTHNAME] –> bude vložen celý název (text) aktuálního měsíce v angličtině (January, February...)
- [MONTHNAME_SHORT] –> bude vložen zkrácený název (text) aktuálního měsíce v angličtině (Jan, Feb...)
Náhodná hodnota:
- [RAND x] –> bude vloženo náhodné celé číslo s hodnotou 1 až x
Speciální operace s texty a čísly:
- [INCR x] –> zvýší existující hodnotu (číslo) o zadanou hodnotu x
- [APP text] –> připojí zadaný text k existující hodnotě (přidaný text bude oddělený mezerou)
–> např. díky zápisu [APP [DAY].[MONTH].[YEAR]] bude ke stávající hodnotě přidáno aktuální datum
- [CLEAR] –> smaže hodnotu (nastaví prázdný textový řetězec)
Je také možné použít hodnotu jednoho pole jako hodnotu pro jiné pole – např. pokud bychom třeba chtěli do CUSTOM7 nastavit hodnotu z pole pro Jméno (First Name), lze použít [VAR recipient.first_name] jako hodnotu.

Příjemci si uchovávají všechna data, která získali v aktuálním scénáři, takže je lze použít například v nodu CONDITION (Podmínka) v jiném (následujícím) scénáři. Nod EXECUTE nemá výstup, protože příjemci, kteří do něj vstupují, jsou přesunuti do jiného scénáře.
V jednom scénáři může být více těchto nodů, které shromažďují příjemce v různých okamžicích jejich průchodu scénářem. Příjemci zůstávají v nodu maximálně 6 měsíců – jsou tedy průběžně do nodu ukládáni, nebo z něj mazáni (po uplynutí 6 měsíců) –> to znamená, že každý příjemce bude mít nastavenou dobu a po uplynutí této doby bude z nodu odstraněn.
Výběrem tohoto nodu (dle jeho názvu) v nodu Zdroje dat - COLLECT v aktuálním, nebo jiném scénáři přesunete všechny dosud shromážděné příjemce do tohoto zdrojového nodu. Po propojení mezi zdrojovým nodem a operačním nodem se při každém spuštění scénáře přesunou všichni shromáždění příjemci z operačního nodu do zdrojového. Node COLLECT tedy nemá výstup.
WAIT (Čekej)
Příjemci přicházející do tohoto nodu počkají nastavenou dobu a poté budou ve scénáři pokračovat.
END (Konec)
Ukončuje scénář, tzn. nemá výstup. Je to volitelný nod, který uživatelům pomáhá vizualizovat tok příjemců scénářem. Příjemci, kteří dojdou scénářem do tohoto nodu, jsou “zahozeni” včetně jejich dat (získaných ve scénáři).
Odešle vybranou e-mailovou kampaň. Aby bylo možné kampaň ve scénáři použít, musí být v pokročilém nastavení kampaně povolen scénářový režim.
Kampaň s nastaveným scénářovým režimem není možné poslat jinak než ze scénáře.
Před samotným odesláním je třeba příjemce uložit/aktualizovat o údaje ze scénáře. Proto je potřeba vybrat seznam příjemců. Pokud má příjemce zůstat na stejném seznamu, ze kterého do scénáře přišel, vyberte první položku „* Recipient origin“.


SMS
Odešle vybranou SMS kampaň. Aby bylo možné kampaň ve scénáři použít, musí být v pokročilém nastavení kampaně povolen scénářový režim.

Před samotným odesláním je třeba příjemce uložit/aktualizovat o údaje ze scénáře. Proto je potřeba vybrat seznam příjemců. Pokud má příjemce zůstat na stejném seznamu, ze kterého do scénáře přišel, vyberte první položku „* Recipient origin“.


MANAGE
Tento node slouží ke správě příjemců v Mailkitu.
Nod MANAGE má několik režimů, které lze vybrat z rozbalovací nabídky:
Vložit (Insert) —> příjemci, kteří dosáhnou tohoto nodu, budou vloženi do vybraného seznamu příjemců.

Přesunout (Move) —> v tomto režimu bude příjemce přesouván z jednoho seznamu příjemců do druhého.
Pokud je vybráno „* Recipient origin“, bude příjemce přesunut ze seznamu, ve kterém se aktuálně nacházel, do vybraného seznamu.

Smazat (Delete) —> příjemce bude odstraněn z vybraného seznamu. Pokud je vybrán „* Recipient origin“, bude příjemce odstraněn ze seznamu, ve kterém se aktuálně nacházel.

Odhlásit (Unsubscribe) —> příjemce bude odhlášen
