Expressions Overview
This allows you to perform numeric calculations, rounding, comparisons, and advanced math operations directly inside expressions—without using custom helpers. This is an extensive list. For examples and instructions on how to use each expression, please use our brand new and improved iX Hello Employee". This is an extensive list. For examples and instructions on how to use each expression, please use our brand new and improved iX Hello Employee".
Math (Full Object)
Math.abs(-5); // 5
Math.ceil(4.2); // 5
Math.floor(4.8); // 4
Math.round(4.5); // 5 (or use Math.round(x * 100) / 100 for decimals)
Math.min(1, 2, 3); // 1
Math.max(1, 2, 3); // 3
Math.pow(2, 8); // 256 (or use 2 ** 8)
Math.sqrt(16); // 4
Math.random(); // 0.0 to 1.0
Math.PI; // 3.14159...
Object (Read-Only)
Object (Read Only) referring to the built‑in JavaScript Object global where the binding itself is read‑only, but the object and its methods are fully usable.
Object.keys(user); // ['name', 'email', 'age']
Object.values(user); // ['John', 'john@example.com', 30]
Object.entries(user); // [['name', 'John'], ['email', '...'], ...]
Object.fromEntries(entries); // { name: 'John', ... }
Object.hasOwn(user, 'email'); // true
Object.assign({}, a, b); // Merge objects (creates new object)
Array (Static)
It means only the static methods of the JavaScript Array object are available, not the instance (prototype) methods.
JSON
JSON is exposed as a safe, static global utility for data transformation only
Type Constructors
Type Constructors refers to the built‑in data‑type functions that let you create or coerce values into a specific type inside an expression.
Date (Static Methods)
Date is exposed only with its static methods. This means you can work with timestamps and ISO date strings, but you cannot create or manipulate full Date objects the way you would in standard JavaScript.
Encoding & Security helpers
Encoding refers to a small set of safe, stateless encoding/decoding utilities exposed to help you prepare or interpret data for transport, especially in:
API query parameters
$fromToon (| Parsed array | Parse TOON back to objects )
$toToon (Compact table format | For AI-optimized data display)
URLs
Headers
Tokens or identifiers
Text passed between workflow steps
Encoding & Security helpers are designed to protect customer conversations, integrations, and enterprise systems by ensuring that data is: Safely encoded before display or transmission, Protected from injection and formatting attacks, Handled consistently across channels and APIs, Sanitized before being rendered or reused.
Type Checking & Type Checking helpers
Type Checking is supported through a limited, safe subset of JavaScript type‑inspection utilities.
Type Checking helpers allow you to verify the data type of a value before using it in logic, comparisons, transformations, or responses.
BigInt & BigInt Helpers
BigInt is available as a type constructor for large integers, but with strict limitations to keep expressions safe and deterministic.
BigInt Helpers are specialized $ helpers designed to work with very large integers—numbers that are too large to be safely represented as standard numeric types (for example, long account numbers, transaction references, or large counters).
Regular Expressions
RegExp are intended for string validation and pattern matching, not for full‑blown text processing or dynamic regex construction.
Sample Example: We are using regular expression to format a phone number
The phone number is : "5553211234"
The flow looks like this:

Result:

Native Methods (Always Available)
Native Methods are core language methods that are always available, regardless of which global's are enabled or restricted.
String Methods
String methods are native and always available.They are the most reliable and widely used tools in expressions
Array Methods
Explains what you can safely rely on everywhere, without depending on Array (Static) or prototype-heavy behavior. Array handling exists, but it is intentionally constrained.
Note: Mutating array methods (.push(), .pop(), .splice(), .sort(), .reverse()) are NOT available. Use non-mutating alternatives like .toSorted(), .toReversed(), spread, or $sortBy().
Number Methods
This is focused only on number methods you can always rely on, without depending on Math, BigInt, or environment‑specific behavior.
Standard Library Functions ($ Helpers)
These are utility functions with a $ prefix for operations that have no pure-JavaScript equivalent. Grouped by category.
Date & Time
Date & Time helpers allow you to:
Work with the current timestamp
Format dates for display or APIs
Add or subtract time (days, hours, minutes)
Compare dates for routing logic
Calculate time differences (SLAs, expiry)
The Date and Time are in UTC time zone
Current Date/Time
They are used whenever you need the system‑generated time inside flows, conditions, variables, API mappings, or responses.
These helpers are read‑only, platform‑controlled, and safe for production conversational logic.
Date Arithmetic
Date Arithmetic helpers allow you to add, subtract, and calculate differences between dates and timestamps. They are part of the standard $ helper library and are commonly used in: SLAs & escalation logic, Expiry and validity checks, Follow‑up scheduling, Appointment windows, Aging calculations.
Note : Format is Year-Month-Date
Date Parts
Date Parts helpers let you extract individual components (year, month, day, hour, etc.) from a date or timestamp.
Extract components for branching ("if month is December"):
Date Comparison
Date Comparison helpers are used to compare two dates or timestamps and return a boolean result (true / false).
Date Validation
Date validation is typically done using standard $ helpers such as existence checks, null checks, and comparisons, rather than custom parsing or regex logic.
Relative Time
Relative Time refers to evaluating or presenting time in relation to another point in time, most commonly relative to “now”. Instead of asking “What is the exact date?”, relative time answers questions like:
“5 minutes ago”
“Within the last 24 hours”
“In the next 7 days”
“Expired 2 days back”
Formatting
Formatting helpers are used to convert dates and timestamps into readable or system‑required string formats.
Locale-aware display formatting with named patterns and custom date format strings:
Date format tokens: MMMM (January), MMM (Jan), MM (01), D (5), DD (05), YYYY (2026)
Data Access & Transformation
Data Access and Transformation are essential for robust, enterprise‑grade conversational flows.
LLM Optimization
LLM Optimization focuses on getting higher‑quality, more predictable, and more cost‑efficient responses from Large Language Models by controlling what data is sent, how it is structured, and how the model is guided—before a prompt is executed.
In iX Hello, this optimization is achieved without writing model‑level code, using Expression Engine helpers, data shaping, and guard logic.
Identity
Identity helpers and patterns are used to identify, normalize, validate, and safely use identities across customer conversations and integrations. “Identity” in iX Hello typically refers to who the user is (or which entity they represent) and how that identity is consistently referenced across channels, sessions, APIs, and LLM prompts.
Last updated
Was this helpful?