Configuration Field Types
All fields have a common base structure as seen in the below example:
myField:
title: The Label of the field
type: text #The type of field - see full list below
help: A help text shown below the field.
required: true #Determines if the field is required
secret: true # If true keeps values hidden from users once they've entered them
sortOrder: 1 #Where the field should appear visually
placeholder: Show this when field is empty
defaultValue: Some default value
dynamicDefaultValue: #Defines a dynamic default value based on other values
type: "conditional" #Right now this is the only type
conditions:
- condition:
otherField: otherFieldValue #When another field has this value
value: 5432 #Use this as the default value
dependsOn: #Makes this field disabled until the fields mentioned have been filled
- otherField
- otherField2
options: #Various options - depends on the field type
configuration: #Various configuration - depends on the field type
Below you'll find all field types and how to use them.
Simple Types
The following will result in a simple value such as a boolean, string or number.
Type | Description | Data Type |
---|---|---|
integer | Integer field | integer |
number | Number field | double |
float | Float field | float |
string | String (single-line) field | String |
text | Multi line text area | String |
boolean | Checkbox field | boolean |
country | Country selector field | String |
cron | Cron expression field | String |
javascript | Javascript Editor field | String |
json | JSON Editor field | String |
sql | SQL Editor field | String |
text_encoding | Allows to select text encoding | String |
date | Select date | String |
time | Select time (hour + minute) | String |
timezone | Select time zone | String |
Enumerated Types
The following will result in a simple value such as a boolean, string or number.
Type | Description | Data Type |
---|---|---|
enum | Enumeric field ( e.g. ) | String |
multiselect | Multi selection field | Set |
tags | Field that allows to add / edit multiple strings as "tags" | Set |
Both enum
and multiselect
require a List<String>
or Map<String,String>
of options provided in the options property:
myEnumField:
id: myEnumField
type: enum
options:
first: First option
second: Second option
myEnumFieldWithEmptyText:
id: myEnumField
type: enum
options:
first: First option
second: Second option
configuration:
emptyText: Select a value...
myMultiSelectField:
id: myEnumField
type: enum
options:
- First option
- Second option
Dexi Types
The following will provide a reference to a Dexi asset such as a robot or a folder.
Type | Description | Data Type |
---|---|---|
dataset | Select data set | See below |
datatype | Select data type | See below |
robot | Select robot | See below |
dictionary | Select dictionary | See below |
robotrun | Select robot configuration (run) | See below |
folder | Select folder | See below |
The above types all produce the same data structure which is an object with the following structure:
{
"id": "some-id", //The unique identifier for the selected asset
"type": "dataset", //The type of reference - See below for types
"name": "My Data Set", //The name of the asset
"pathName": "/My Folder/My Data Set" //The full path of the asset in the users projects view
}
The following asset types are supported:
- scraper: An extractor robot
- crawler: An crawler robot
- pipes: A pipes robot
- dataset: A data set
- datatype: A data type
- category: A folder
- robotrun: A robot configuration (/ run)
- dictionary: A dictionary
File Types
The following types are file uploads. All will result in a string containing a data URI
Type | Description | Data Type |
---|---|---|
file | File upload field | Data Uri String |
image | Image upload field | Data Uri String |
Special Types
type: maparea
Selects a map area - provides an object containing the results to your app which is structured as you'll see below:
{
"west": float, //Longitude West
"east": float, //Longitude East
"north": float, //Latitude North
"south": float //Latitude South
}
type: oauth
Add 3rd party OAuth authentication.
See OAuth Support for more information
Updated about 5 years ago