Expression

Represents an expression used in the project. It can be part of a condition, an assign action, an entity reference, or another expression. It is composed of a left operand, an operator, and a right operand.

Elements of an expression object literal
Element Type Description
id String UUID of the expression
left operand Object Key-value pair representing one of the supported left operand types
operator Object Key-value pair representing one of the supported operator types
right operand Object Key-value pair representing one of the supported right operand types
lastModified String Date and time of the last modification, in this format: YYYY-MM-DD hh:mm:ssZ—for example, 2019-10-17T20:55:38.488Z
leftVariableId String Only present if the left operand is of type leftVariable; UUID of the variable (or SYS_VAR_channel if using the predefined variable channel)
leftVariableExpressionId String Only present if the left operand is of type leftVariableExpression; UUID of the element
leftExpressionId String Only present if the left operand is of type leftExpression; UUID of the expression
rightVariableId String Only present if the right operand is of type rightVariable; UUID of the variable (or SYS_VAR_channel if using the predefined variable channel)
rightVariableExpressionId String Only present if the right operand is of type rightVariableExpression; UUID of the element
rightExpressionId String Only present if the right operand is of type rightExpression; UUID of the expression
  Expression example (price is not equal to NULL)  

Supported left operand types

Represents the left operand of an expression.

Operands for the left-hand side of expressions
Element key Value type Description
leftVariable Variable object Variable used as the left operand
leftVariableExpression Variable expression object Complex variable field, or the result of a supported method against a variable, used as the left operand
leftExpression Expression object Expression used as the left operand
leftConceptId String UUID of the entity whose value is used as the left operand
leftConceptIdLiteral String UUID of the entity whose literal is used as the left operand
leftConceptIdFormattedLiteral String UUID of the entity whose formatted literal is used as the left operand
leftIntent String One of: INTENT_VALUE (active intent value), INTENT_LITERAL (active intent literal), INTENT_FORMATTED_LITERAL (formatted version of the active intent literal),INTENT_CONFIDENCE (active intent confidence score)
leftSpecialOperand String One of: LAST_COLLECTION_INTERPRETATION (last collection interpretation), LAST_CONFIRMATION_INTERPRETATION (last confirmation interpretation), NULL

Supported operator types

Represents the operator in an expression.

Operators for expressions
Element key Value type Description
logicalOperator String One of: NO_LOGICAL_OPERATOR, AND_OPERATOR, OR_OPERATOR
mathematicalOperator String One of: NO_OP, PLUS, MINUS, TIMES, DIVIDE, MOD
relationalOperator String One of: NO_RELATIONAL_OPERATOR, EQUAL_OPERATOR, NOT_EQUAL_OPERATOR, LESS_OPERATOR, GREATER_OPERATOR, LESS_EQUAL_OPERATOR, GREATER_EQUAL_OPERATOR

Supported right operand types

Represents the right operand of an expression.

Operands for the right-hand side of expressions
Element key Value type Description
rightConstant String Constant used as the right operand (maximum 255 characters)
rightVariable Variable object Variable used as the right operand
rightVariableExpression Variable expression object Complex variable field, or the result of a supported method against a variable, used as the right operand
rightExpression Expression object Expression used as the right operand
rightConceptId String UUID of the entity whose value is used as the right operand
rightConceptIdLiteral String UUID of the entity whose literal is used as the right operand
rightConceptIdFormattedLiteral String UUID of the entity whose formatted literal is used as the right operand
rightIntent String One of: INTENT_VALUE (active intent value), INTENT_LITERAL (active intent literal), INTENT_FORMATTED_LITERAL (formatted version of the active intent literal), INTENT_CONFIDENCE (active intent confidence score)
rightSpecialOperand String One of: LAST_COLLECTION_INTERPRETATION (last collection interpretation), LAST_CONFIRMATION_INTERPRETATION (last confirmation interpretation), NULL
rightChannelId String Only present if leftVariableId is SYS_VAR_channel; UUID of the channel to use for the right operand

Variable expression

Represents a complex variable field, or the result of a supported method against a variable.

Elements of a variable expression object literal
Element Type Description
id String UUID of the variable expression
operations Array of variable operations Operations to be performed against the specified variable—multiple operations are chained, that is, each operation is applied to the result of the previous operation
variableId String UUID of the variable
timestamp String Date and time of the last modification, in this format: YYYY-MM-DD hh:mm:ssZ—for example, 2019-08-21T08:34:27Z

Variable operation

Represents an operation in a variable expression.

Operations for variable expressions
Element key Value type Description
selectField Object Key-value pair, where the key is fieldVariableId and the value is the UUID of a field in the schema of a complex variable—to select a deeply nested field, use the required number of selectField operations, to be performed in sequence
callMethod Method call object Method to be applied to the specified variable or field

Method call

Represents a method call in a variable operation.

Elements of a method call object literal for variable operations
Element key Value type Description
methodName String Name of the method to call (for example, length, random, getDay)—the available methods depend on the type of the variable to which the method is to be applied
parameters Array of method parameters Key-value pairs that represent the parameters for the method, if any; otherwise, empty

Method parameter

Represents a parameter in a method call.

Parameters for method call object literals
Element key Value type Description
constant String Constant to be passed to the method
variableId String UUID of a variable to be passed to the method (or SYS_VAR_channel if using the predefined variable channel)
conceptId String UUID of an entity to be passed to the method