Reference guide for supported transformation functions and parameters for attribute transformers
This page includes a comprehensive list of all supported transformer functions and parameters. Some commonly used transformation functions include:
Replacing a character with a different one
Removing domains from email addresses
Transforming to upper, lower, camel, or snake case
Using a substring from the original value
See Attribute Sync and Transformers for more information about using attribute transformers to update or create attributes in downstream systems based on changes in your source of identity.
Removes non-printable characters and replaces non-ASCII characters with their closest ASCII equivalents.
Note: The ASCII transformer performs operations on the base level, not the extended set.
Parameter Format
Characters (STRING, required)
Usage Example
Input:
{firstname | ASCII, "Łukasz Gruba"}
Output:
Lukasz Gruba
Transforms country code to ISO 3166 format.
ISO 3166 defines codes for the representation of country names, dependent territories, and their subdivisions
Parameter Format
Format (STRING, optional): [alpha2, alpha3, numeric], defaults to alpha2
Usage Example
Input:
{COUNTRY_CODE_ISO3166, "US", alpha3}
Output:
USA
Transforms dates to a different format using Go time layout syntax.
Parameter Format
Output Layout (STRING, required): Go time layout for output format. Input Layout (STRING, optional): Go time layout for input format
Usage Example
Input:
{start_date | DATE_FORMAT, "01/02/2006"}
Output:
This transformer formats date as MM/DD/YYYY
Transforms a string from an attribute of another entity in the graph.
Parameter Format
EntityType (STRING, required)
SourceAttribute (STRING, required),
TargetAttribute (STRING, required)
Usage Example
Input:
{FROM_ENTITY_ATTRIBUTE, "Employee", "ID", "ManagerID"}
Output:
Manager ID (for the employee)
Transforms language to RFC 5646 format.
RFC 5646 defines "Tags for Identifying Languages." It does not contain a fixed, exhaustive list of language codes within the RFC itself. Instead, it specifies the structure and rules for constructing language tags, which are then built using codes from various external standards and registries.
Parameter Format
Characters (STRING, required): String of a language name
Usage Example
Input:
{LANGUAGE_RFC5646, "Spanish"}
Output:
es
Generates a set of integers as strings.
Parameter Format
Integer (NUMBER, required), Length (NUMBER, required)
Usage Example
Input:
{NEXT_NUMBER, 2, 3}
Output:
"", "2", "3", "4"
Note: This transformer can also be used within a IF/ELSE conditional transformer for intelligent username generation with automatic fallback strategies.
Transforms a phone number into the E.164 format.
E. 164 numbers are formatted [+] [country code] [subscriber number including area code] and can have a maximum of fifteen digits. Parameter Format
Region (STRING, optional): ISO 3166-1 alpha-2 format
Usage Example
Input:
{PHONE_NUMBER_E164, "+1-800-555-1212"}
Output:
+18005551212
Removes all instances of specified characters from a string.
Parameter Format
Characters (STRING, required): Characters to be removed
Usage Example
Input:
{REMOVE_CHARS, "[email protected]", "@", "."}
Output:
FirstLastexamplecom
Removes the domain from an email address.
Parameter Format
Characters (STRING, required)
Usage Example
Input:
{REMOVE_DOMAIN, "[email protected]"}
Output:
pennylane
Splits a string and returns the string at the given index.
Parameter Format
Split String (STRING, required), Index (NUMBER, required)
Usage Example
Input:
{SPLIT, "[email protected]", "@", 0}
Output:
first.last
Note: This transformer generated the results where the index starts at zero (0).
Adjusts date value based on hour, day, month, year inputs provided (example: 2021-01-01 00:00:00 with a DATE_ADJUST of "+1,2,3,-1" becomes "2020-04-03 01:00:00").
Parameter Format
Integer - date
Integer - hour
Integer - day
Integer - month
Integer-year
String (Optional) - Format
Usage Example
Input:
{activation_date | DATE_ADJUST,+1,2,3,-1}
{activation_date | DATE_ADJUST,+1,2,3,-1, "RFC3339"}
{activation_date | DATE_ADJUST,+1,2,3,-1, "2006-01-02T15:04:05Z07:00"}
Interprets the incoming time string as if it were in the specified time zone, then converts it to a UTC time. (example: if the input is "1/2/2025 11pm" and the defined time zone is "America/Los_Angeles" the function will treat "1/2/2025 11pm" as local time in Los Angeles and output the corresponding UTC time "1/3/2025 7am")
Parameter Format
String - Time Zone String (Optional) - Format
Usage Example
Input:
{activation_date | ASSUME_TIME_ZONE, "America/Los_Angeles"}
{activation_date | ASSUME_TIME_ZONE, "America/Los_Angeles", "RFC3339"}
{activation_date | ASSUME_TIME_ZONE, "-07:00"}
{activation_date | ASSUME_TIME_ZONE, "-07:00", "RFC3339"}
Interprets the incoming time string as if it were in UTC and then converts it to the specified time zone. (example: if the input is "1/2/2025 11pm" and the specified time zone is "America/Los_Angeles" the function will treat "1/2/2025 11pm" as the UTC time zone and output the corresponding "America/Los_Angeles" time "1/2/2025 3pm") Note: When using the time zone parameter, a named time zone ("America/Los_Angeles") accounts for daylight saving time, whereas a time zone offset ("-07:00") is always calculated from UTC, ignoring daylight saving time.
Parameter Format
String - Time Zone String (Optional) - Format
Usage Example
Input:
{activation_date | UTC_TO_TIME_ZONE, "America/Los_Angeles"}
{activation_date | UTC_TO_TIME_ZONE, "America/Los_Angeles", "RFC3339"}
{activation_date | UTC_TO_TIME_ZONE, "-07:00"}
{activation_date | UTC_TO_TIME_ZONE, "-07:00", "RFC3339"}