These are the expressions I use in almost every workflow I build. Took me a while to figure them all out, so sharing here in case it saves someone time.
1. $json.fieldName
Access data from the current item. Works in most nodes. If your data is nested, chain it: $json.customer.email
2. $now
Current timestamp. I use it constantly for logging and scheduling. You can format it too: $now.toFormat('yyyy-MM-dd')
3. $items(“NodeName”)[0].json
Pull data from a specific previous node by name. Super useful when you have branching flows and need to reference something from earlier.
4. $node[“NodeName”].json
Similar to above but slightly different behavior - this grabs the output of a specific node. I use this when I need data from a non-connected node.
5. $if(condition, valueIfTrue, valueIfFalse)
Inline conditional. Instead of adding an IF node just for a simple check, you can do it right in the expression editor.
For example: $if($json.score > 80, 'qualified', 'nurture')
Honestly these 5 cover probably 80% of what I need day to day. The rest is usually just combining them.
Anything missing from your list? Would be curious what expressions others rely on most.