This timestamp webhook sets a variable that you can use in any part of your decision tree, format it in a variety of ways, and even perform logic operations on it.
Example uses:
- Display the day of the week.
- Use a Logic Node to route customers to different nodes for work hours, after hours, or weekends.
- Show the current date and time, display it in a node, and save it as a part of your session.
How to Set Up Timestamps
- Edit a node, and scroll to the Apps and Webhooks section.
- Under Webhook to call, click select Webhook: Zingtree Timestamp from the drop-down menu.
- In the Message Data, you can include an optional return variable name, timezone, or date format as parameters to send to the webhook. (More details below).
Here’s an example to return a date that looks like 2021-02-11 in the Pacific time zone (Los Angeles), assigning it to a variable named datetime: - Once the node with this webhook has been visited, the timestamp will appear wherever you enter #datetime# in any node.
See the “Timestamp Webhook Demo” tree
Customizing
In the Message Data area, you can include these parameters:
- &tz= to set a time zone.
- &format= to set a custom date format.
- &return= to set the name of the variable returned. (If you leave it blank, the variable will be called timestamp).
Example message area customizations:
&tz=America/New_York&format=F j,Y h:i:s A
This sets the time zone to Eastern Time (USA), and makes the #timestamp# variable look like ”
“.
&tz=Australia/Sydney&format=d/m/Y&return=date
This sets the timezone to Sydney, Australia, and makes the #date# variable appear as “25/07/2017”.
&format=l&return=day
This sets a #day# variable to the day of the week.
Reference
The full list of timezones is here.
The full list of date formatting options is below:
format character |
Description | Example returned values |
---|---|---|
Day | — | — |
d |
Day of the month, 2 digits with leading zeros | 01 to 31 |
D |
A textual representation of a day, three letters | Mon through Sun |
j |
Day of the month without leading zeros | 1 to 31 |
l (lowercase ‘L’) |
A full textual representation of the day of the week | Sunday through Saturday |
N |
ISO-8601 numeric representation of the day of the week | 1 (for Monday) through 7 (for Sunday) |
S |
English ordinal suffix for the day of the month, 2 characters | st , nd , rd or th . Works well with j |
w |
Numeric representation of the day of the week | 0 (for Sunday) through 6 (for Saturday) |
z |
The day of the year (starting from 0) | 0 through 365 |
Week | — | — |
W |
ISO-8601 week number of year, weeks starting on Monday | Example: 42 (the 42nd week in the year) |
Month | — | — |
F |
A full textual representation of a month, such as January or March | January through December |
m |
Numeric representation of a month, with leading zeros | 01 through 12 |
M |
A short textual representation of a month, three letters | Jan through Dec |
n |
Numeric representation of a month, without leading zeros | 1 through 12 |
t |
Number of days in the given month | 28 through 31 |
Year | — | — |
L |
Whether it’s a leap year | 1 if it is a leap year, 0 otherwise. |
o |
ISO-8601 week-numbering year. This has the same value as Y , except that if the ISO week number (W ) belongs to the previous or next year, that year is used instead. |
Examples: 1999 or 2003 |
Y |
A full numeric representation of a year, 4 digits | Examples: 1999 or 2003 |
y |
A two digit representation of a year | Examples: 99 or 03 |
Time | — | — |
a |
Lowercase Ante meridiem and Post meridiem | am or pm |
A |
Uppercase Ante meridiem and Post meridiem | AM or PM |
B |
Swatch Internet time | 000 through 999 |
g |
12-hour format of an hour without leading zeros | 1 through 12 |
G |
24-hour format of an hour without leading zeros | 0 through 23 |
h |
12-hour format of an hour with leading zeros | 01 through 12 |
H |
24-hour format of an hour with leading zeros | 00 through 23 |
i |
Minutes with leading zeros | 00 to 59 |
s |
Seconds with leading zeros | 00 through 59 |
u |
Microseconds. Note that date() will always generate 000000 since it takes an int parameter, whereas DateTime::format() does support microseconds if DateTime was created with microseconds. |
Example: 654321 |
v |
Milliseconds (added in PHP 7.0.0). Same note applies as for u . |
Example: 654 |
Timezone | — | — |
e |
Timezone identifier | Examples: UTC , GMT , Atlantic/Azores |
I (capital i) |
Whether or not the date is in daylight saving time | 1 if Daylight Saving Time, 0 otherwise. |
O |
Difference to Greenwich time (GMT) without colon between hours and minutes | Example: +0200 |
P |
Difference to Greenwich time (GMT) with colon between hours and minutes | Example: +02:00 |
p |
The same as P , but returns Z instead of +00:00 |
Example: +02:00 |
T |
Timezone abbreviation | Examples: EST , MDT … |
Z |
Timezone offset in seconds. The offset for timezones west of UTC is always negative, and for those east of UTC is always positive. | -43200 through 50400 |
Full Date/Time | — | — |
c |
ISO 8601 date | 2004-02-12T15:19:21+00:00 |
r |
» RFC 2822 formatted date | Example: Thu, 21 Dec 2000 16:01:07 +0200 |
U |
Seconds since the Unix Epoch (January 1 1970 00:00:00 GMT) |