Comparison operators
This page details the available comparison operators when writing rules as part of the search route.
= (Equal)โ
The = operator checks exact matches of the specified value:
{
  "operator": "=",
  "property": "myProperty",
  "value": "myExactValue"
}
This operator can also be used to check the value of boolean properties:
{
  "operator": "=",
  "property": "myBooleanProperty",
  "value": true
}
For datetime properties, the = operator only supports ISO8601 format strings:
{
  "operator": "=",
  "property": "$createdAt",
  "value": "2022-07-26T16:38:06.839Z"
}
The = operator only supports ISO8601 format strings for datetime values.
To use preset date ranges (like "lastWeek", "today", etc.), use the between or notBetween operators instead.
!= (Not Equal)โ
The != operator checks exact matches of the specified value and returns all results that fail to satisfy the check:
{
  "operator": "!=",
  "property": "myProperty",
  "value": "myExactValue"
}
This operator can also be used to check the value of boolean properties:
{
  "operator": "!=",
  "property": "myBooleanProperty",
  "value": false
}
> (Greater Than)โ
The > operator checks values larger than the specified value:
{
  "operator": ">",
  "property": "myNumericProperty",
  "value": 7
}
>= (Greater Than or Equal)โ
The >= operator checks values larger than or equal to the specified value:
{
  "operator": ">=",
  "property": "myNumericProperty",
  "value": 7
}
< (Less Than)โ
The < operator checks values less than the specified value:
{
  "operator": "<",
  "property": "myNumericProperty",
  "value": 7
}
<= (Less Than or Equal)โ
The <= operator checks values less than or equal to the specified value:
{
  "operator": "<=",
  "property": "myNumericProperty",
  "value": 7
}
isEmptyโ
The isEmpty operator checks if the value of the specified property is null:
{
  "operator": "isEmpty",
  "property": "myProperty"
}
isNotEmptyโ
The isNotEmpty operator checks if the value of the specified property is not null:
{
  "operator": "isNotEmpty",
  "property": "myProperty"
}
propertySchemaโ
The propertySchema filter can be used with any standard operator. It allows you to filter entities based on a properties matching a specific type (for example, find all string properties with a given value):
- String
 - URL
 
{
  "propertySchema": {
    "type": "string"
  },
  "operator": "=",
  "value": "My value"
}
{
  "propertySchema": {
    "type": "string",
    "format": "url"
  },
  "operator": "=",
  "value": "https://example.com"
}
- The 
propertySchemacan be used with any Port property; - The 
propertySchemareplaces thepropertyfilter when performing property schema search. 
betweenโ
The between operator checks datetime values and returns entities whose relevant datetime property matches the given range:
{
  "operator": "between",
  "property": "$createdAt",
  "value": {
    "preset": "lastWeek"
  }
}
Available Presets:
- tomorrow
 - today
 - yesterday
 - lastWeek
 - last2Weeks
 - lastMonth
 - last3Months
 - last6Months
 - last12Months
 
The between operator also supports standard date ranges:
{
  "combinator": "and",
  "rules": [
    {
      "operator": "between",
      "property": "$createdAt",
      "value": {
        "from": "2022-07-26T16:38:06.839Z",
        "to": "2022-07-29T17:00:28.006Z"
      }
    }
  ]
}
notBetweenโ
The notBetween operator checks datetime values and returns entities whose relevant datetime property does not match the given range:
{
  "operator": "notBetween",
  "property": "$createdAt",
  "value": {
    "preset": "lastWeek"
  }
}
containsโ
The contains operator checks if the specified value exists within a string property:
{
  "property": "myStringProperty",
  "operator": "contains",
  "value": "mySubString"
}
doesNotContainsโ
The doesNotContains operator checks if the specified value does not exists in the specified property:
{
  "operator": "doesNotContains",
  "property": "myStringProperty",
  "value": "otherValue"
}
containsAnyโ
The containsAny operator checks if any of the specified strings exist in the target array:
{
  "operator": "containsAny",
  "property": "myArrayProperty",
  "value": ["Value1", "Value2", ...]
}
beginsWithโ
The beginsWith operator checks if the specified property starts with the specified value:
{
  "operator": "beginsWith",
  "property": "myStringProperty",
  "value": "myString"
}
doesNotBeginsWithโ
The doesNotBeginsWith operator checks if the specified property does not start with the specified value:
{
  "operator": "doesNotBeginsWith",
  "property": "myStringProperty",
  "value": "otherValue"
}
endsWithโ
The endsWith operator checks if the specified property ends with the specified value:
{
  "operator": "endsWith",
  "property": "myStringProperty",
  "value": "myString"
}
doesNotEndsWithโ
The doesNotEndsWith operator checks if the specified property does not end with the specified value:
{
  "operator": "doesNotEndsWith",
  "property": "myStringProperty",
  "value": "otherValue"
}
inโ
The in operator checks if a string property is equal to one or more specified string values:
- Standard
 - Dynamic Filter
 
{
  "property": "myStringProperty",
  "operator": "in",
  "value": ["Value1", "Value2"]
}
In order to filter entities that belong to one or more of your teams you can use the special My Teams filter:
{
  "property": "$team",
  "operator": "in",
  "value": ["My Teams"]
}
You can also use the My Teams filter in the UI:

notInโ
The notIn operator checks if a string property is not equal to all of the specified string values:
{
  "property": "myStringProperty",
  "operator": "notIn",
  "value": ["Value1", "Value2"]
}