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', '[email protected]', 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?