Instalink Scripting Documentation

Dates

Adjust by Timezone
Current date
Current timestamp
Day of Month
Day of Week (number)
Day of Week (text)
Month (number)
Month (text)
Months ago
Truncate date to day
Truncate date to hour
Truncate date to minute
Truncate date to month
Truncate date to year
Year
Years ago

Encoding

Base 64 Decode
Base 64 Encode
CSV Decode
CSV Encode
JSON Decode
JSON Encode
URI Decode
URI Encode
X12 Decode
X12 Encode
XML Decode

Lists

Aggregate Array
Aggregate Array By Group
All But First Item in List
All But Last Item in List
Array To Map
Combine Two Arrays Without Duplicates
Count of Items in List
Each Item in List as List
Extract Part of Array
Filter List by Matches
Filter List by Non-Matches
Filter List: Unique
Filter List: Unique By Key
First Item in List
Flatten List
Flatten List Recursively
Get Common Items In Arrays
Get Item In List At Index
Group Array By Value
Join List Into Text
Last Item in List
List Append
List Contains Value
List Get Index
List Sort By Key
Pluck Values from List Items
Random Item in List
Randomize List
Remove Index From List
Removes Items From Array In Other Arrays
Reverse List
Set Item In List At Index
Sort List
Transpose List of Lists

Logic

And
Equal to
Exists
Greater Than
Greater Than or Equal
Less Than
Less Than or Equal
Match
Not equal to
Or
Xor

Maps

Map Get
Map Has Key
Map Keys
Map Pairs
Map Size
Map Values
Map With Entry
Map Without Entry
Merge Maps

Math

Absolute value
Add
Cube Root
Divide
Divide (whole number)
Exponent
Multiply
Negate
Random Number
Random Whole Number
Remainder
Round down
Round number
Round towards zero
Round up
Square Root
Subtract

Other

Lookup

Presets

ISO Country
ISO Subdivision

Text

Append Text
Capitalize words
Concatenate Text
Create Hash
Create HMAC Signature
Extract HTML Attribute
Extract HTML Text
Extract Inner HTML
Extract Outer HTML
Left trim text
Lower case
Prepend Text
Replace Text
Right trim text
Search Text
Split Text Into Lines
Split Text Into Words
Sub Text
Text Contains
Text length
Text split
Trim text
Upper case

Type Conversions

As Is
Boolean
Date
Date to String
List
Map
Number
Number to Fixed Decimal String
Text
Timestamp
Whole Number

Adjust by Timezone | TIMEZONE

Syntax

TIMEZONE( [value = CURRENT_DATE()], [timezone = "UTC"], [invert = false] )

Parameters

value
A DATE value. If the value is not a DATE, it will be converted to one with the DATE operation.

timezone
A timezone value as a TEXT. A list of valid timezone values may be found at https://en.wikipedia.org/wiki/List_of_tz_database_time_zones.

invert
A BOOLEAN value representing whether the offset is going from UTC to the provided timezone or in reverse. Alternatively, the alias TEXT values "FROM_UTC" and "TO_UTC" may be used for FALSE and TRUE, respectively.

Return Value

Returns the UTC month value of the VALUE as an INTEGER

Description

Alters the value of a DATE using a timezone. InstaLink stores all date values as UTC DATETIME values. However, many external systems record date time values in some local time rather than in UTC time. This operation enables a local date value to be reconciled with InstaLink's date format. For example, an external system in Utah (America/Denver timezone) may store their date values in local time. If InstaLink were to receive the value "2020-08-15T12:00:00", it would assume the value to be UTC which would be six or seven hours different than the actual time (depending on whether daylight savings was in effect). The TIMEZONE operation can be used to correct this by adjusting the value of the DATE based on the actual timezone of the received date.

Examples

TIMEZONE("December 1, 2018 00:00:00 GMT+00:00", "America/Denver")
# returns DATE("November 30, 2018 17:00:00 GMT+00:00")
TIMEZONE("July 1, 2019 00:00:00 GMT+00:00", "America/Denver")
# returns DATE("June 30, 2019 18:00:00 GMT+00:00")
TIMEZONE("December 1, 2018 00:00:00 GMT+00:00", "America/Denver", true)
# returns DATE("December 1, 2018 07:00:00 GMT+00:00")