Skip to content

Expressions

Fuuz Wiki Import edited this page Jun 7, 2026 · 2 revisions

Expressions

Article Type: How-To Audience: Developers, App Admins Module: How To

Manipulating data with functions and expressions. This page covers the core JSONata expression types — string, numeric, comparison, and boolean — used throughout the Fuuz platform to transform and evaluate data.

Fuuz Context

Where this applies in Fuuz: JSONata-style expressions are used in Fuuz data flows, mappings, and rule logic to transform payloads between MES/ERP endpoints, GraphQL resolvers, and device integrations. Expressions may reference Fuuz runtime variables (e.g., $env, $tenant) and step context values exposed by the flow.

  • Mappings: Use concatenation (&) and numeric operators to build outbound fields from inbound JSON and Fuuz step outputs.
  • Rules: Predicates using comparison/boolean operators drive routing (e.g., reject, retry, branch) within a flow.
  • Best practice: Prefer explicit casting ($string(), $number()) when mixing types returned by connectors.

String Expressions

Path expressions that point to a string value will return that value.

String literals can also be created by enclosing the sequence of characters in quotes. Either double quotes " or single quotes ' can be used, provided the same quote type is used for the start and end of the string literal. Single quote characters may be included within a double quoted string and vice versa without escaping. Characters within the string literal may be escaped using the same format as JSON strings.

Strings can be combined using the concatenation operator &. This is an infix operator and will join the two strings returned by the expressions on either side of it. This is the only operator that will attempt to typecast its operands to the expected (string) type.

Examples

Concatenate FirstName followed by a space followed by Surname:

FirstName & ' ' & Surname
"Fred Smith"

Concatenate the Street and City from the Address object with a comma separator (note the use of parentheses):

Address.(Street & ', ' & City)
"Hursley Park, Winchester"

Casts the operands to strings, if necessary:

5 & 0 & true
"50true"

Numeric Expressions

Path expressions that point to a number value will return that value.

Numeric literals can also be created using the same syntax as JSON numbers.

Numbers can be combined using the usual mathematical operators to produce a resulting number. Supported operators:

  • + addition
  • - subtraction
  • * multiplication
  • / division
  • % remainder (modulo)

Examples

Consider the following JSON document:

{
  "Numbers": [1, 2.4, 3.5, 10, 20.9, 30]
}
Expression Output Comments
Numbers[0] + Numbers[1] 3.4 Adding 2 prices
Numbers[0] - Numbers[4] -19.9 Subtraction
Numbers[0] * Numbers[5] 30 Multiplying price by quantity
Numbers[0] / Numbers[4] 0.04784688995215 Division
Numbers[2] % Numbers[5] 3.5 Modulo operator

Comparison Expressions

Often used in predicates, for comparison of two values. Returns Boolean true or false. Supported operators:

  • = equals
  • != not equals
  • < less than
  • <= less than or equal
  • > greater than
  • >= greater than or equal
  • in value is contained in an array

Examples

Expression Output Comments
Numbers[0] = Numbers[5] false Equality
Numbers[0] != Numbers[4] true Inequality
Numbers[1] < Numbers[5] true Less than
Numbers[1] <= Numbers[5] true Less than or equal
Numbers[2] > Numbers[4] false Greater than
Numbers[2] >= Numbers[4] false Greater than or equal
"01962 001234" in Phone.number true Value is contained in

Boolean Expressions

Used to combine Boolean results, often to support more sophisticated predicate expressions. Supported operators:

  • and
  • or

Note: not is supported as a function, not an operator.

Examples

Expression Output Comments
(Numbers[2] != 0) and (Numbers[5] != Numbers[1]) true and operator
(Numbers[2] != 0) or (Numbers[5] = Numbers[1]) true or operator

See Also


Source: support.fuuz.com

🏠 Home

Getting Started (14)
Training Guides (52)

Applications

Access & Users

Data Models & Schema

Screens

Weather Lookup Series — guided 3-part build

Data Flows & Integrations

Data, Reporting & Monitoring

Enterprise & Organizations

Platform Concepts & Architecture (10)
Screens & Application Design (17)
Data Models & Schema (8)
Data Flows & Scripting (51)

Designing Flows

Data Flow Nodes

JSONata Reference

Scripting

Integrations & Connectors (30)

General & iPaaS

Plex

EDI

IIoT & Edge Gateway (18)

Physical Device Connectors

Edge Data Connectors

Reporting, Documents & Dashboards (8)
Administration & Access Control (27)
Data Management (8)
Accelerators, Templates & Packages (8)
Design Standards (1)
How-To Guides (8)
FAQ & Troubleshooting (1)
Release Notes (117)

2026

2025

2024

2023

2022

2021

2020

Policies & Company (6)

Clone this wiki locally