This article explains the different variables in different parts of the platform.
When creating a variable you can choose from different types and the set of options for these types. The variable's type determines what kind of value would be temporarily stored/calculated in it. In this article we'll explain all settings of all different variable types.

Different kinds of variables

Below are all different kinds of variables explained, listed alphabetically. Some of them can be used as Variable, some as Input variable and some as both.

Checkbox

This variable is used as container for a checkbox value (true or false)

Variable

Kind: Checkbox
Name:
Choose a name for the variable which is used in expressions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Set a value for this variable. Checked means true, unchecked means false.

Input variable

Kind: Checkbox
Name:
Choose a name for the variable which is used in expressions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.

Checkbox expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Checkbox value (true  or false) based on the expression entered in the Expression setting. 

Variable

Kind: Checkbox
Name:
Choose a name for the variable which is used in expressions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression is evaluated as true or false.

Collection

This variable is used as a container for a collection of records which belongs to the chosen model. The records are determined by the applied filter or expression.

Variable

Kind: Collection
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Model:
Select the model to which the records must belong to.
Ids:
Enter variables or values containing the Id's of the records you want to collect. This option will be deprecated somewhere in the future, we encourage using the Filter or Expression options.
Filter:
Apply a filter to narrow down the results. All properties and relations are available for filtering.
Order:
Select an order in which the records are collected. The results are collected on an alphanumeric order based on the chosen property.
Limit:
Set a limit for the number of records in the collection. Enter a static number or use an expression for dynamic values. E.g. enter 50 and the collection will contain 50 records, maximum.
Offset:
Set an offset for the records in the collection. Enter a static number or use an expression for dynamic values. E.g. enter 50 and the collection will skip 50 records.
Expression:
Insert variables and expressions which act as a filter for the collected result(s). Overrules the selected model and filter(s).

Input variable

Kind: Collection
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.
Model:
Select the model to which the records must belong to.
Ids:
Enter variables or values containing the Id's of the records you want to collect. This option will be deprecated somewhere in the future, we encourage using the Filter or Expression options.
Filter:
Apply a filter to narrow down the results. All properties and relations are available for filtering.
Order:
Select an order in which the records are collected. The results are collected on an alphanumeric order based on the chosen property.
Limit:
Set a limit for the number of records in the collection. Enter a static number or use an expression for dynamic values. E.g. enter 50 and the collection will contain 50 records, maximum.
Offset:
Set an offset for the records in the collection. Enter a static number or use an expression for dynamic values. E.g. enter 50 and the collection will skip 50 records.
Expression:
Insert variables and expressions which act as a filter for the collected result(s). Overrules the selected model and filter(s).

Collection (custom model)

This variable is used as a container for JSON formatted data, when the data is plural (multiple objects). When a response from a webservice or endpoint is formatted as JSON data, the custom model can be selected to capture the data in the corresponding attributes. More information about Custom models can be found here: What are custom models?

Input variable

Kind: Custom model
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.
Custom model:
Select an existing custom model or create a new one in which the JSON data will be captured.

Configuration

This variable is used as a container for a Custom configuration. Custom configurations have the ability to contain their own value for each sandbox of your application, whereas Global variables can't. More information about global variables and how to use Custom configurations can be found here: Global variables and Custom configurations.

Variable

Kind: Configuration
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Select one of the existing configurations (of the type Custom) in your application or assign a variable.

Custom model

This variable is used as a container for JSON formatted data, when the data is singular (a single object). When a response from a webservice or endpoint is formatted as JSON data, the custom model can be selected to capture the data in the corresponding attributes. More information about Custom models can be found here: What are custom models?

Input variable

Kind: Custom model
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.
Custom model:
Select an existing custom model or create a new one in which the JSON data will be captured.

Date

This variable is used as a container for a date value.

Variable

Kind: Date
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Select a date through the datepicker for the variable or enter it manually in DD-MM-YYYY format.

Input variable

Kind: Date
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Date expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Date value based on the expression entered in the Expression setting.

Variable

Kind: Date expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression should have a valid date as outcome. If this is not the case, the variable will be empty.

Date time

This variable is used as a container for a date time value.

Variable

Kind: Date time
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Select a date time through the datetimepicker for the variable or enter it manually in DD-MM-YYYY HH:MM format.

Input variable

Kind: Date time
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Date time expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Date value based on the expression entered in the Expression setting.

Variable

Kind: Date time expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression should have a valid date time as outcome. If this is not the case, the variable will be empty.

Filtered collection

This variable is used as a container for a filtered version of the collection chosen in the Collection option. The records are determined by the applied filter or expression. As the filtered collection is derived from a collection variable, its loading time is significantly faster than normal collection variables.

Variable

Kind: Filtered Collection
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Model:
Select the model to which the records must belong to.
Collection:
Select a base collection from which the filtered collection is derived from. All settings (existing filter/expression, order, limit and offset) from the collection will be applied to the filtered collection.
Filter:
Apply a filter to narrow down the results. All properties and relations from the chosen model are available for filtering.

Hash

This variable is used as a container for a JSON value. As hash is a broad term in computing, it may have different meanings from person to person. In the Betty Blocks platform, we treat hashes as data in JSON formatting, mainly consisting of keys and values. More information about hashes can be found here: Hashes | Ruby for Beginners.

Variable

Kind: Hash
Name: Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Json:
Enter a static value in JSON format or insert variables and expressions for dynamic values. The expression should be evaluated as valid JSON.

Input variable

Kind: Hash
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Number

This variable is used as a container for whole numbers (that are written without fractional/decimal components), both positive and negative. Only accepts the characters 0  to 9  and -  (minus).

Variable

Kind: Number
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Set a value for this variable. Enter a static number.

Input variable

Kind: Number
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Number expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Number value based on the expression entered in the Expression setting. 

Variable

Kind: Number expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression: Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression should have a valid number as outcome. If this is not the case, the variable will be empty.

Number with decimal

This variable is used as a container for numbers that may contain fractional/decimal components, both positive and negative. Only accepts the characters 0 to 9 , -  (minus), .  (period) and ,  (comma).

Variable

Kind: Number with decimal
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Set a value for this variable. Enter a static number.
Scale:
Set the scale for the Number with decimal value. The number entered limits the number of digits behind the delimiter. E.g. Scale set to 3 turns 10,37829 to 10,378

Input variable

Kind: Number with decimal
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.
Schaal: Set the scale for the Number with decimal value. The number entered limits the number of digits behind the delimiter. E.g. Schaal set to 3 turns 10,37829 to 10,378

Number with decimal expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Number with decimal value based on the expression entered in the Expression setting. 

Variable

Kind: Number with decimal expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression should have a valid number (with decimal) as outcome. If this is not the case, the variable will be empty.
Precision:
Set the precision for the Number with decimal value. The number entered limits the number of digits behind the delimiter. E.g. Precision set to 3 turns 10,37829 to 10,378

Object

This variable is used as a container for a record which belongs to the chosen model. The record is determined by the applied filter or expression.

Variable

Kind: Object
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Model:
Select the model to which the record must belong to.
Filter:
Apply a filter to narrow down the results. All properties and relations are available for filtering. When the filter yields multiple records, the first in line is selected for the variable. See Order for more info.
Order:
Select an order in which the records are collected. The results are collected on an alphanumeric order based on the chosen property. Depending on the order, the record which is first in line is contained in the variable.
Expression:
Insert variables and expressions which act as a filter for the collected result(s). Overrules the selected model and filter(s).

Input variable

Kind: Object
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.
Model:
Select the model to which the record must belong to.
Filter:
Apply a filter to narrow down the results. All properties and relations are available for filtering. When the filter yields multiple records, the first in line is selected for the variable. See Order for more info.
Order:
Select an order in which the records are collected. The results are collected on an alphanumeric order based on the chosen property. Depending on the order, the record which is first in line is contained in the variable.
Expression:
Insert variables and expressions which act as a filter for the collected result(s). Overrules the selected model and filter(s).

Regex

This variable is used as a container for regular expressions. Regexes are used to check if a value meets a specific pattern/format. Can be used in the boolean_match() expression. More information about Regex can be found here: Regular Expressions.

Variable

Kind: Regex
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Regex:
Enter a static value to be used as regex for checking another value's pattern/format.

Input variable

Kind: Regex
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Regex expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Regex value based on the expression entered in the Expression setting. 

Variable

Kind: Regex expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Text:  
Set a value for this variable. Enter a static text or insert variables and expressions to create custom functionality. The expression should have a valid regex as outcome. If this is not the case, the variable will be empty.

Text

This variable is used as a container for plain text. All characters are accepted as long as they're UTF-8 encoded.

Variable

Kind: Text
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Text:
Set a value for this variable. Enter a static text.

Input variable

Kind: Text
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Text expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Text value based on the expression entered in the Expression setting.

Variable

Kind: Text expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Text:
Set a value for this variable. Enter a static text or insert variables and expressions to create custom functionality. The expression should have a valid text as outcome. If this is not the case, the variable will be empty.
Liquid parse: With this setting enabled, all Liquid syntax included in the Text field is processed.

Url

This variable is used as a container for a URL. 

Variable

Kind: Url
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Value:
Enter the url which is parsed with this variable. Requires a protocol (http  or https) or the step where the variable is included will fail.

Input variable

Kind: Url
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Label:
Choose a label for the variable.
Required:
With this setting enabled, a value is required in this input variable. If the variable doesn't receive a value, the flow will fail.

Url expression

This variable is an expression variable, so its value is automatically calculated and can't be manually changed. It is used for generating a Url value based on the expression entered in the Expression setting. 

Kind: Url expression
Name:
Choose a name for the variable which is used in expressions, actions, endpoints and Liquid syntax. Must be unique within the scope.
Expression:
Define the expression that determines what the variable's outcome should be. Insert variables and expressions to create custom functionality. The expression should have a valid URL as outcome. If this is not the case, the step where the variable is included will fail.

Did this answer your question?