Action

In a processing item, an action element is identified with this key: action. An action object literal represents an assign action, or an entity update action.

Assign action

Assigns a value to a variable, an entity, or the active intent. In an action object literal, an assign action is identified with this key: assign.

Elements of an assignment object literal
Element Type Description
target Object Key-value pair representing one of the supported operand types for the left-hand side of an assignment
value Object Key-value pair representing one of the supported operand types for the right-hand side of an assignment
lhsVariableId String Only present if the left operand is of type lhsVariable; UUID of the variable to set (or SYS_VAR_channel if setting the predefined variable channel)
lhsVariableExpressionId String Only present if the left operand is of type lhsVariableExpression; UUID of the complex variable field to set
variableId String Only present if the right operand is of type variable; UUID of the variable to use (or SYS_VAR_channel if using the predefined variable channel)
VariableExpressionId String Only present if the right operand is of type variableExpression; UUID of the element to use
expressionId String Only present if the right operand is of type expression; UUID of the expression to use
  Assign action example, where the Boolean variable isFirstTime is set to true  

Left assignment operand types

Represents the target for an assign action.

Operands for the left-hand side of assignments
Element key Value type Description
lhsVariable Variable object Variable being set
lhsVariableExpression Variable expression object Field being set in a complex variable
lhsConceptId String UUID of the entity whose value is being set
lhsIntent String Always INTENT_VALUE (active intent value)

Right assignment operand types

Represents the value for an assign action.

Operands for the right-hand side of assignments
Element key Value type Description
constant String Constant used as the right operand (maximum 64000 characters)
variable Variable object Variable used as the right operand
variableExpression Variable expression object Complex variable field, or the result of a supported method against a variable, used as the right operand
expression Expression object Expression used as the right operand
conceptId String UUID of the entity whose value is used as the right operand
conceptIdLiteral String UUID of the entity whose literal is used as the right operand
conceptIdFormattedLiteral String UUID of the entity whose formatted literal is used as the right operand
intent 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)
specialOperand String One of the supported special operands for the right-hand side
channelId String Only present if lhsVariableId is SYS_VAR_channel; UUID of the channel to use as the right operand

Supported special right operand

Assign actions support these special operands for the right-hand side:

Special operands for the right-hand side of assignments
Value Description
NULL Makes a variable or an entity null
NEW_OBJECT Initializes a complex variable as a new object with all fields null—not supported for complex variables with fields that are lists; use separate assign actions to preinitialize complex variable fields that are also complex variables

Entity update action

Updates the .isRequired, .isCompleted, or .isConfirmed attribute of an entity, or clears the entity completely. In an action object literal, an entity update action is identified with this key: conceptAction.

Elements of an entity update action object literal
Element Type Description
conceptId String UUID of the entity
clearConcept Boolean Only present if the action is to clear the entity; always true
conceptUpdate Object Key-value pair where the keys requiredStatus, completeStatus, and confirmStatus represent the three entity attributes .isRequired, .isCompleted, and .isConfirmed; and the values are one of UNCHANGED, TRUE, or FALSE.
  Entity update action example, where an entity is cleared  
  Entity update action example, where the .isCompleted attribute of an entity is set to false