Date & time nodes
Date inputs are parsed with Carbon, so anything Carbon understands works
(ISO 8601, now, +1 day, timestamps, …). All output under result.
Current date/time
@wf::datetime:now · DateTimeNowNode
| Field | Type | Notes |
|---|---|---|
format | text | PHP date format. Blank → ISO 8601. |
timezone | text | Blank → application timezone. |
Output: { "result": "<formatted now>" }
Add to date / Subtract from date
@wf::datetime:add · DateTimeAddNode
@wf::datetime:subtract · DateTimeSubtractNode
| Field | Type | Default | Notes |
|---|---|---|---|
date | text | — | Required. The date to adjust. Supports {{ }}. |
amount | number | 1 | Required. |
unit | select | days | seconds, minutes, hours, days, weeks, months, years. |
Output: { "result": "<ISO 8601>" }
Date difference
@wf::datetime:difference · DateTimeDifferenceNode
Signed difference end - start in the chosen unit (negative when end is
before start), truncated to an integer.
| Field | Type | Default | Notes |
|---|---|---|---|
start | text | — | Required. |
end | text | — | Required. |
unit | select | days | Same options as Add. |
Output: { "result": <integer> }
Format date
@wf::datetime:format · DateTimeFormatNode
| Field | Type | Default | Notes |
|---|---|---|---|
date | text | — | Required. |
format | text | Y-m-d H:i:s | PHP date format. |
Output: { "result": "<formatted>" }
Example: compute an SLA deadline
'nodes' => [
['id' => 'now', 'type' => DateTimeNowNode::type(), 'config' => []],
['id' => 'deadline', 'type' => DateTimeAddNode::type(), 'config' => [
'date' => '{{ nodes.now.result }}', 'amount' => 2, 'unit' => 'hours',
]],
],