Skip to main content
Omneo uses JSON Logic for conditions in reaction filters and claimable benefit eligibility rules. JSON Logic is a small, portable specification for expressing rules as JSON.

Basic syntax

A condition is a JSON object where the key is the operator and the value is an array of operands:
The { "var": "field_name" } expression reads a value from the event context.

Single condition

Profile’s first name is “Jane”:

Comparison operators

OR condition

Profile has “tag-1” or “tag-2”:

AND condition

Birth year before 1980 AND tier is “tier-2”:
12-month spend over $1,000 AND in tier-2:

NOT condition

Exclude profiles with “tag-1”:
Exclude profiles with “tag-1” AND “tag-2”:

Available variables

Level 1: Profile fields (root level)

Accessed as first_name, tier_handle, email, etc.:

Level 2: Nested objects

Accessed with dot notation, e.g., aggregations.spend_12m:

Level 3: Deeply nested

Accessed as attributes.comms.email_promo, etc.:

Extended operators

Omneo extends standard JSON Logic with additional operators. They are available everywhere JSON Logic conditions run: reaction filters, webhook conditions, and claimable benefit eligibility rules.

Comparison and filtering

Example, transaction has at least two items:

Date operators

Example, profile joined more than 30 days ago:

Value helpers

Example, match an email domain case-insensitively:

Full JSON Logic reference

For the complete standard operator reference, see jsonlogic.com. All standard JSON Logic operators are supported alongside the Omneo extensions above.